ファイルにデータを追加しようとしています。各行は関数内に記述されます。以下は、私の実際のコードに基づいて、サンプルコードは次のとおりです。Pythonでファイルの末尾にデータを追加する
a = 0
def data():
global a
a = int(raw_input('Enter value for a\n>'))
write()
def write():
f = open('path\\to\\file.txt', "a")
f.write('%s\n' % a)
f.close
proceed()
def proceed():
should = raw_input('Please press enter to continue or type in 0 to stop\n>')
if should == '0':
return
else:
data()
data()
私は例えば、1, 2 and 3
はの値として、これはそれがファイルに書き込ま取得する方法で、コードを実行し、与える:
3
2
1
しかし、私はそれをファイルにこの方法を書くことにしたい。
1
2
3
それを行うための正しい方法でしょうか? write
機能を実行するたびに、ファイルの最後に新しい行を追加するにはどうすればよいですか?
'f.close'はファイルを閉じません!グローバルを使用してデータを渡すことは推奨されません。パラメータを使用します。そして、最終的に、私は本当になぜこの出力を得るのか分かりません。追加モードでは行の順序を元に戻すことはできませんが、意味がありません。 –
@ Jean-FrançoisFabreありがとうございました。それは働くようになった。 – rsnaveen
@ Jean-FrançoisFabreそれも私が理解できなかったことです。ファイルが閉じられていなくても、ファイルの末尾に常にデータを書き込んではいけませんか? – rsnaveen