python赢得了';如果脚本中有函数,则不会写入文件
我想从包含函数的脚本写入文件。一切似乎都正常,除了如果脚本中存在函数,它不会向文件写入任何内容(它会向文件写入“”,因此实际上会擦除它);即使它在定义函数之前写入。 (运行Python 3.9.0) 这会将“A”写入test.txt:python赢得了';如果脚本中有函数,则不会写入文件,python,function,Python,Function,我想从包含函数的脚本写入文件。一切似乎都正常,除了如果脚本中存在函数,它不会向文件写入任何内容(它会向文件写入“”,因此实际上会擦除它);即使它在定义函数之前写入。 (运行Python 3.9.0) 这会将“A”写入test.txt: f = open("test.txt", "w") f.write("A") f.close f = open("test.txt", "w") f.write(
f = open("test.txt", "w")
f.write("A")
f.close
f = open("test.txt", "w")
f.write("A")
f.close
def func():
return 1
这会将“”写入test.txt:
f = open("test.txt", "w")
f.write("A")
f.close
f = open("test.txt", "w")
f.write("A")
f.close
def func():
return 1
我做错了什么/如何解决它?您需要通过添加括号调用
f.close
:f.close()
。它没有刷新写入缓冲区。它在第一种情况下工作只是偶然的。请注意,使用with
语句在Python中打开文件是一种很好的做法,请参阅。使用离开下方的缩进块时,close()
调用将自动正确完成。