Python:如何不断更新文本行
Python: how to constantly update text lines
我有一个 20 行的列表,0 或 2。现在我让它根据 ping 结果重写文本文件的 20 行。我有一个单独的程序读取那 20 行,但是当没有 20 行时它会产生错误(因为正在写入文本文件)。如何在不重写文档的情况下编辑每个单独的文本行?
ping ip
if ping == 0
f= open("status", 'ab')
f.write("0\n")
f.close
这是它如何书写的一个条件。我会在执行之前擦除文档。
如果我正确理解标题中 constantly 的用法,那么您是在尝试在此处传递实时数据...程序不应通过文件进行实时通信。这并不稳定 非常慢 。如果不是这种情况,您可能需要重写文件,用 w
(写入)而不是 a
(追加)打开它。
if ping == 0
with open("status", 'wb') as f:
# write all 20 lines
详细了解 modes。
注意: 要实际关闭文件,您应该 调用 file.close
使用 f.close()
而不是 f.close
。如果你像我建议的那样使用 with
作为上下文管理器,一旦上下文结束,文件就会关闭(缩进 returns 到 with
级别)。
我有一个 20 行的列表,0 或 2。现在我让它根据 ping 结果重写文本文件的 20 行。我有一个单独的程序读取那 20 行,但是当没有 20 行时它会产生错误(因为正在写入文本文件)。如何在不重写文档的情况下编辑每个单独的文本行?
ping ip
if ping == 0
f= open("status", 'ab')
f.write("0\n")
f.close
这是它如何书写的一个条件。我会在执行之前擦除文档。
如果我正确理解标题中 constantly 的用法,那么您是在尝试在此处传递实时数据...程序不应通过文件进行实时通信。这并不稳定 非常慢 。如果不是这种情况,您可能需要重写文件,用 w
(写入)而不是 a
(追加)打开它。
if ping == 0
with open("status", 'wb') as f:
# write all 20 lines
详细了解 modes。
注意: 要实际关闭文件,您应该 调用 file.close
使用 f.close()
而不是 f.close
。如果你像我建议的那样使用 with
作为上下文管理器,一旦上下文结束,文件就会关闭(缩进 returns 到 with
级别)。