Python 读和写同一个脚本
我目前正在艰苦地学习Python中练习16,我的代码有一个问题,它将写入文件,但我的最后一个print命令没有将文件内容打印到控制台上。在我的命令行上,它只显示了几行空白。据我所知,“r+”以读写模式打开它,但计算机无法读取它。 谁能告诉我有什么问题吗?任何帮助都将不胜感激:)Python 读和写同一个脚本,python,python-2.7,Python,Python 2.7,我目前正在艰苦地学习Python中练习16,我的代码有一个问题,它将写入文件,但我的最后一个print命令没有将文件内容打印到控制台上。在我的命令行上,它只显示了几行空白。据我所知,“r+”以读写模式打开它,但计算机无法读取它。 谁能告诉我有什么问题吗?任何帮助都将不胜感激:) 由于已写入文件,写入后的偏移量将指向文件的结尾。在这一点上,如果你想从一开始就读取文件,你必须关闭它,然后重新打开它 顺便说一下,由于Python 2.5支持并建议使用该语句,例如: with open('yourfil
由于已写入文件,写入后的偏移量将指向文件的结尾。在这一点上,如果你想从一开始就读取文件,你必须关闭它,然后重新打开它 顺便说一下,由于Python 2.5支持并建议使用该语句,例如:
with open('yourfile', 'r') as f:
for line in f:
...
将
与
一起使用将为您关闭文件 如第一个答案所述,写入后偏移量将指向文件的末尾。但是,您不需要关闭文件并重新打开它。而是在阅读之前先这样做:
filename.seek(0)
这将重置文件开头的偏移量
filename = open('text.txt',"r+")
print(filename.read())
lin = input()
filename.write(lin)
filename.seek(0) # take it back to top, 0 can be changed to whatever line you want
print(filename.read())
filename.close()
然后简单地读一下
filename.read()
无需关闭然后重新打开文件,您可以添加该文件,该文件将返回到文件顶部
filename = open('text.txt',"r+")
print(filename.read())
lin = input()
filename.write(lin)
filename.seek(0) # take it back to top, 0 can be changed to whatever line you want
print(filename.read())
filename.close()
好的,非常感谢您!!