鱼C论坛

 找回密码
 立即注册
查看: 616|回复: 6

029 一个文件

[复制链接]
发表于 2018-12-7 23:50:35 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 胖豆lucky 于 2018-12-9 15:01 编辑

问题:为什么加粗的部分放进函数里面后只会有boy_1和boy_2两个文件呢?如果不放进去就可以运行成功为六个文件~

  1. f=open('record.txt')

  2. def save_file(boy,girl,count):
  3.     file_name_boy = 'boy_'+str(count)+'.txt'
  4.     file_name_girl = 'girl_'+str(count)+'.txt'

  5.     boy_file = open(file_name_boy,'w')
  6.     girl_file = open(file_name_girl,'w')

  7.     boy_file.writelines(boy)  
  8.     girl_file.writelines(girl)

  9.     boy_file.close()
  10.     girl_file.close()

  11.     boy = []
  12.     girl = []
  13.     count+=1

  14. boy = []
  15. girl = []
  16. count = 1

  17. for each_line in f:
  18.     if each_line[:6] != '======':
  19.         (role,line_spoken) = each_line.split(':',1)
  20.         if role == '小甲鱼':
  21.             boy.append(line_spoken)
  22.         if role == '小客服':
  23.             girl.append(line_spoken)
  24.     else:
  25.         save_file(boy,girl,count)


  26. save_file(boy,girl,count)
  27.         
  28. f.close()
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2018-12-7 23:51:17 | 显示全部楼层
  1. def save_file(boy,girl,count):
  2.     file_name_boy = 'boy_'+str(count)+'.txt'
  3.     file_name_girl = 'girl_'+str(count)+'.txt'

  4.     boy_file = open(file_name_boy,'w')
  5.     girl_file = open(file_name_girl,'w')

  6.     boy_file.writelines(boy)  
  7.     girl_file.writelines(girl)

  8.     boy_file.close()
  9.     girl_file.close()

  10.     [b]boy = []
  11.     girl = []
  12.     count+=1 [/b]
复制代码


尴尬,总是加粗失败……
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-12-7 23:52:25 | 显示全部楼层
本帖最后由 胖豆lucky 于 2018-12-7 23:53 编辑

def save_file(boy,girl,count):
    file_name_boy = 'boy_'+str(count)+'.txt'
    file_name_girl = 'girl_'+str(count)+'.txt'

    boy_file = open(file_name_boy,'w')
    girl_file = open(file_name_girl,'w')

    boy_file.writelines(boy)  
    girl_file.writelines(girl)

    boy_file.close()
    girl_file.close()

    boy = []
    girl = []
    count+=1
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-12-8 00:42:36 | 显示全部楼层
本帖最后由 xy123151 于 2018-12-8 00:45 编辑
胖豆lucky 发表于 2018-12-7 23:52
def save_file(boy,girl,count):
    file_name_boy = 'boy_'+str(count)+'.txt'
    file_name_girl = ' ...

  1. a=0
  2. def change_a(a):
  3.     a=1
  4. change_a(a)
  5. print(a)
复制代码

你猜猜a等于几

小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-12-8 00:45:24 | 显示全部楼层
我刚看完视频,加粗部分不要放这里,等号只有两个,判断完之后,第三个文本会被保存在内存,不会写入,第三段内容没有的。你定义的函数,三个参数只需要定义,打开,写入关闭就可以的
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-12-8 00:46:01 | 显示全部楼层
Stubborn 发表于 2018-12-8 00:45
我刚看完视频,加粗部分不要放这里,等号只有两个,判断完之后,第三个文本会被保存在内存,不会写入,第三 ...
  1. def save_file(boy, girl, count):
  2.     file_name_boy = 'boy_' + str(count) + '.txt'
  3.     file_name_girl = 'girl_' + str(count) + '.txt'

  4.     boy_file = open(file_name_boy, 'w')
  5.     girl_file = open(file_name_girl, 'w')

  6.     boy_file.writelines(boy)
  7.     girl_file.writelines(girl)

  8.     boy_file.close()
  9.     girl_file.close()


  10. def split_file(file_name):
  11.     f = open('record.txt')

  12.     boy = []
  13.     girl = []
  14.     count = 1

  15.     for each_line in f:
  16.         if each_line[:6] != '======':
  17.             (role, line_spoken) = each_line.split(':', 1)
  18.             if role == '小甲鱼':
  19.                 boy.append(line_spoken)
  20.             if role == '小客服':
  21.                 girl.append(line_spoken)
  22.         else:
  23.             save_file(boy, girl, count)

  24.             boy = []
  25.             girl = []
  26.             count += 1

  27.     save_file(boy, girl, count)

  28.     f.close()


  29. split_file('record.txt')
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-12-8 00:51:38 | 显示全部楼层
晚点回宿舍我自己再写一次  有什么问题到时候和你说
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-1-12 01:18

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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