-1

これは私がこれまでに得たものです:

counter = (0)

loop = 1
while loop ==1:

a = open ("mustangused.txt", "w")
counter = (str(counter)+str(1))
a.write (counter)
loop = 1

このループを通過した回数をカウントし、テキストを .txt ドキュメントに出力するようにしたいと考えています。

上記のコードは機能しますが、問題は、古い番号を置き換えずに、12345 のような前の番号に番号を追加するだけであることです:( w.write を試しましたが、うまくいきませんでした。

4

1 に答える 1

4
LIMIT = 10  # adjust this to the number of iterations you want.
with open('mustangused.txt', 'w') as f:
    counter = 0
    while counter < LIMIT:
        counter += 1

    f.write(str(counter) + '\n')

何をしたいのか、何回ループを実行したいのかははっきりしていません。それにもかかわらず、これにより、ファイルを開き、ループし、ファイルを閉じる前にファイルに値を書き込むためのスケルトンが得られます。ニーズに合わせて、これにいくつかの追加/変更を加えることができます。

いくつかのメモ:

  • 以前withはファイルを管理していましたが、終了するか例外が発生すると、ファイルは自動的に閉じられます。

  • ループ内で値を追加するたびにカウンターを文字列に変換する必要はありません。ファイルに書き込むときに一度変換するだけです。

  • ループ内で同じファイルを繰り返し開く代わりに、ファイルはループの前に 1 回だけ開かれます ("with" ブロックが終了すると自動的に閉じられます)。

  • 結局、f.write(str(LIMIT) + '\n')ファイルで同じ出力を達成するためにループなしで実行できるので、この質問の目的はまだ私には不明です。

それでも、これが多少/何らかの形で役立つことを願っています。

于 2012-07-27T01:58:49.353 に答える