2016-09-23 8 views
-1

長さの異なる行/レコードを持つ固定ファイルを読み込もうとしています。私は、指定された標準長よりも短い行の最後に空白を埋める必要があります。ファイル内の行末にスペースがありません

助けてください。

enter image description here

+0

ファイルを読み込み、または編集しますか? – Daneel

+0

コードを正しくフォーマットしてください。すべてのインデントが欠落しているので、この方法では実行できません。 – MisterMiyagi

+0

これはまた、最初にスペースを空白に埋め込む必要があるのか​​という疑問を引き起こします。あなたはおそらく別の問題を解決しようとしていますか? – MisterMiyagi

答えて

1

あなたはとして、ljust文字列メソッドを使用することを検討することができます。 行がある場合は、ファイルから読み込む行:

line = line.ljust(50) 

は50文字の行を取得するには、スペースと行の終わりを詰め込むます。 lineが50より長い場合、行はそのままコピーされます。

+0

結果セットには先頭にスペースが追加されていますが、これは予想されますか? – Abhi

+1

あなたはおそらく改行の後にスペースを入れているでしょう。 Pythonは行を読むときに ''\ n' 'のような改行マーカーを翻訳することはできますが、削除することはできませんので、それらを取り除かないと、下の行にスペースを書きます。これは、通常、rstripメソッドで行われます。また、書き込む前に改行を追加する必要があります。 –

+0

それは、おかげでみんな働いた。 – Abhi

2

あなたは、特定の長さにパッドに文字列をstring.formatを使用することができます。

ドキュメントは右へ<パッドはパッドに特定の長さまで右にスペースを含む文字列は、あなたがこのような何かを行うことができるようにと言っている:

>>> "{:<30}".format("foo") 
'foo       ' 
+0

これは私が持っていたテスト対象で動作し、コードに実装して結果を共有しようとします。ありがとう。 – Abhi

関連する問題