2017-09-22 15 views
-3

複数の入力をテキストファイルに保存する最も簡単な方法は何ですか?私はそれを実行するたびに新しい単語が追加されますか?複数の入力をテキストファイルに書き込む?

randomlist = [] 
randominput = input() 

randomlist.append(randominput) 
randomlist.append(randominput) 

with open("bleh.data", "w") as f: 
    f.write(str(randomlist)) 
    print(randomlist) 

これは、たとえば、最初の入力のコピーを私に与えただけです。

編集:私は "a"の代わりに "w"を書いたと思っています。私は注意を払っていません。解決しました。ありがとう!

+0

'with open(" bleh.data "、" a ")をfとするための追加モード' a'を使用します。ファイルの最後にファイルを切り捨てずに追加するために開きます。新しいファイルが存在しない場合は作成します。 –

+0

取得しているデータは何ですか?文字列または数字? – Kev1n91

+0

私は文字列と数字の両方をとり、それらを呼び出すまでそれらを格納できる在庫を作ろうとしています。それが何かを明確にするかどうかは分かりません... –

答えて

0

ビルトインopen()のPython用のマニュアルを参照してください:

モードの最も一般的に使用される値は、読み取りのためには「r」、書き込みのための「W」(それがすでに存在する場合はファイルを切り捨て)です(現在のシーク位置にかかわらず、すべての書き込みがファイルの末尾に追加されることを意味する)があります。

wフラグが書き込みのためにファイルを開き、それが最初に切り捨てられます。 awではありません。

代わりにos.lseek()を使用できます。しかし、あなたが開いているファイルにwを指定すると、ファイルを最初にサイズ0に切り捨てて、以前に書いたものはすべて削除します。

関連する問題