鱼C论坛

 找回密码
 立即注册
查看: 1723|回复: 2

初学者有关文件读取写入,最后两 行数据丢失问题

[复制链接]
发表于 2021-6-24 09:58:19 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 无花果学python 于 2021-6-24 10:00 编辑

在学习文件读取写入时,试着从note.txt中将小王与小顾的对话读出,并将他们的对话分别存放到两个文本文件中,刚开始能全部 读出,增加了几句话,并修改相应代码进行不同的尝试后,再改回来后,通过print监测,最后两行能读出来,但写不到相应的文件里,不知怎么回事,请教各位,谢谢!xw=[]
xg=[]
f=open("note.txt")
for each_line in f:
    (role,line_spoken)=each_line.split(':',1)
    if role=='小王':
        xw.append(line_spoken)
        xwfiles=open("xw.txt",'a')
        xwfiles.writelines(xw)
        print ("xw",xw)
    else:
        xg.append(line_spoken)
        xgfiles=open('xg.txt','a')
        xgfiles.writelines(xg)
        print ("xg",xg)
    xg=[]
    xw=[]
xwfiles.close
xgfiles.close
f.close

note.txt:
小王:小王第一句话
小顾:小顾第一句话
小王:小王第二句话
小王:小王第三句话
小顾:小顾第二句话
小王:小王第四句话
小顾:小顾第三句话
小王:小王第五句话

xw.txt:
小王第一句话
小王第二句话
小王第三句话
小王第四句话

xg.txt:
小顾第一句话
小顾第二句话

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-6-24 10:39:52 | 显示全部楼层
  1. xwfiles.close
  2. xgfiles.close
  3. f.close
复制代码

      改为
  1. xwfiles.close()
  2. xgfiles.close()
  3. f.close()
复制代码

     试试看
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-6-24 10:55:05 | 显示全部楼层
我帮你把代码改好了,你自己比对一下:
  1. xg=[] # 这里修改了
  2. xw=[]
  3. f=open("note.txt")
  4. for each_line in f:
  5.     (role,line_spoken)=each_line.split(':',1)
  6.     if role=='小王':
  7.         xw.append(line_spoken)
  8.         # 这里修改了
  9.         print ("xw",xw)
  10.     else:
  11.         xg.append(line_spoken)
  12.         # 这里修改了
  13.         print ("xg",xg)

  14. # 这里修改了
  15. xgfiles=open('xg.txt','a')
  16. xwfiles=open("xw.txt",'a')
  17. xwfiles.writelines(xw)        
  18. xgfiles.writelines(xg)
  19. # 这里修改了
  20. xwfiles.close()
  21. xgfiles.close()
  22. f.close()
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-28 13:21

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表