30秒ごとにテキストの最初の行を繰り返し削除したいテキストドキュメントがあります。
リセットまたはキャンセルを求められない場合に、30秒ごとにノンブロッキングで関数を呼び出すことができるPythonリセット可能タイマーオブジェクトのコードをすでに記述しています(またはより正確にコピーしています)。
Pythonのリセット可能なタイマーはキャンセルされるまで繰り返されます
(誰かが私がリピートを実装した方法をチェックできれば、それを実行しているときに私のPythonがクラッシュすることがあるので、大丈夫です:))
ここで、テキストファイルをロードする関数を記述し、おそらく最初の行を除くすべてをコピーしてから、同じテキストファイルに書き直したいと思います。私はこれを行うことができます、私はこのように思います...しかしそれは最も効率的ですか?
def removeLine():
with open(path, 'rU') as file:
lines = deque(file)
try:
print lines.popleft()
except IndexError:
print "Nothing to pop?"
with open(path, 'w') as file:
file.writelines(lines)
これは機能しますが、それを行うための最良の方法ですか?