【发布时间】:2021-01-23 20:17:59
【问题描述】:
我有类似于以下伪代码的代码:
def getFirstSet():
file1 = open("log.txt", 'a')
list1 = [item1, item2, item3, item4, ...]
for item in list1:
file1.write(item + '\n')
file1.close()
def getSecondSet():
file1 = open("log.txt", 'a')
list1 = [item1, item2, item3, item4, ...]
for item in list1:
file1.write(item + '\n')
file1.close()
getFirstSet()
getSecondSet()
以上只是伪代码 - 这两个函数在实际代码中有很大不同 - 具有不同的输出/解析和目的。
我遇到的问题是第一个函数正确执行并且所需的项目被写入文件。第二个函数执行,没有返回错误,但是没有通过第二个函数写入内容。我知道缓冲存在问题,可以通过刷新或关闭相关文件来解决,但是无论哪种方式代码都会失败。有人知道为什么会发生这种情况吗?有什么我遗漏的概念吗?
我还需要将代码附加到现有文件中,而不是覆盖(因此使用“a”而不是“w”。 (Python 3,Windows 10)
【问题讨论】: