gpt4 book ai didi

python - 将文本文件附加到文本文件

转载 作者:太空宇宙 更新时间:2023-11-03 13:58:46 24 4
gpt4 key购买 nike

我遇到了一个错误。我一直在尝试将文本文件附加到自身,如下所示:

file_obj = open("text.txt", "a+")
number = 6

def appender(obj, num):
count = 0
while count<=num:
read = file_obj.read()
file_obj.seek(0,2)
file_obj.write(read)
count+=1

appender(file_obj, number)

但是,text.txt 文件中充满了奇怪的 ASCII 符号。起初,该文件只包含一个简单的“hello”,但在代码后面,它包含以下内容:

hellohello䀀 猀· d娀 Ť搀Ŭ娀ͤ攀ɪ昀Ѥ萀 夀ɚ搀ť樀Ŧ搀茀 婙ݤ攀Ѫ昀ࡤ萀 夀њ搀   
ɥ攀ժ昀൤
茀 婙୤攀ť樀ɦ搀茀 婙൤萀 ݚ搀࡚攀४攀ƃ娀਍搀⡓ 癳  祐桴湯䌠慨慲瑣牥䴠灡楰杮
䌠摯捥挠ㅰ㔲‰敧敮慲整⁤牦浯✠䅍偐义升嘯久佄卒䴯䍉䙓⽔䥗䑎坏⽓偃㈱〵吮员‧楷桴朠湥潣敤⹣祰
മഊ椊 and so on.

任何帮助将不胜感激

最佳答案

我想我可以解决你的问题,尽管我无法重现它。存在逻辑错误:写入后,无法返回到文件开头进行读取。从分析的角度来说,你没有做任何事情来诊断问题。至少,使用 print 语句来查看您正在阅读的内容:这很好地突出了问题。这是我使用的循环:

count = 0
while count<=num:
file_obj.seek(0) # Read from the beginning of the file.
read = file_obj.read()
print(count, read) # Trace what we're reading.
file_obj.seek(0, 2)
file_obj.write(read)
count+=1

这给出了 128 (2^(6+1)) 次“hello”重复的预期输出。

扩展

我建议您学习使用 for 循环和 with open ... as 习惯用法。这些将大大缩短您的程序并提高可读性。

关于python - 将文本文件附加到文本文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49412685/

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