xue11 发表于 2018-4-2 17:32:57

求助二十九讲学习,完全按照小甲鱼老师思路写的,为什么返回结果与课程上讲的不一样

代码如下
f = open('C:\\Users\\songyuxue\\Desktop\\新建文件夹 (2)\\record.txt')
boy = []
girl = []
count = 1


for each_line in f:
    if each_line[:6] != '======':
      (role, line_spoken) = each_line.split(':',1)
      if role =='小甲鱼':
            boy.append(line_spoken)
      if role =='小客服':
            girl.append(line_spoken)

      else:
            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 =count + 1

            
f.close()

#返回结果如图,因该是4个txt格式才对

ba21 发表于 2018-4-2 18:41:02

你在看看代码。
for each_line in f: 循环了多少下????满足多少就写多少个文件。

gonff 发表于 2020-11-14 23:00:43

本帖最后由 gonff 于 2020-11-14 23:01 编辑

你的else位置不太对?应该往前缩进一下。
感觉原文如果有大量空白行的话,就可以理解为什么这么多文件了。因为只要不是=====,也不是小甲鱼或小客服的行,就会新建文件一次。
页: [1]
查看完整版本: 求助二十九讲学习,完全按照小甲鱼老师思路写的,为什么返回结果与课程上讲的不一样