gpt4 book ai didi

python - 写入文件然后在 Python 3.6.2 上读取它

转载 作者:太空宇宙 更新时间:2023-11-03 12:30:59 25 4
gpt4 key购买 nike

target=open("test.txt",'w+')
target.write('ffff')
print(target.read())

当运行以下 python 脚本时(test.txt 是一个空文件),它会打印一个空字符串。

但是,当重新打开文件时,它可以正常读取:

target=open("test.txt",'w+')
target.write('ffff')
target=open("test.txt",'r')
print(target.read())

这会根据需要打印出 'ffff'。

为什么会这样?即使我在第 2 行更新了“target”,它仍然被识别为没有内容,并且我必须将 test.txt 重新分配给它吗?

最佳答案

一个文件有一个读/写位置。写入文件将该位置放在写入文本的末尾;阅读从相同的位置开始。

seek method把那个位置放回开始:

with open("test.txt",'w+') as target:
target.write('ffff')
target.seek(0) # to the start again
print(target.read())

演示:

>>> with open("test.txt",'w+') as target:
... target.write('ffff')
... target.seek(0) # to the start again
... print(target.read())
...
4
0
ffff

数字是target.write()target.seek()的返回值;它们是写入的字符数和新位置。

关于python - 写入文件然后在 Python 3.6.2 上读取它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45731052/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com