miusa 发表于 2020-4-14 13:56:13

31讲动动手,求指点这参数哪里有问题

跟原答案对比了几遍,没有找出问题……求大神指点!

原题目:
编写一个程序,这次要求使用pickle将文件( 见附件 )里的对话按照以下要求腌制成不同文件(没错,是第29讲的内容小改,考考你自己能写出来吗?):
小甲鱼的对话单独保存为boy_*.txt的文件(去掉“小甲鱼:”)
小客服的对话单独保存为girl_*.txt的文件(去掉“小客服:”)
文件中总共有三段对话,分别保存为boy_1.txt, girl_1.txt,boy_2.txt, girl_2.txt, boy_3.txt, gril_3.txt共6个文件(提示:文件中不同的对话间已经使用“==========”分割)

代码内容:
import os
import pickle


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

    b = open(boy_file,'wb')   
    g = open(girl_file,'wb')

    pickle.dump(boy,b)
    pickle.dump(girl,g)

    b.close()
    g.close()



def split_file(file_name):
    boy = []
    girl = []
    count = 1

    os.chdir(r'E:\06 goodstudydayup\python')
    f = open(file_name)
   
    for each_line in f:
      if each_line[:6] != "======":
            (name,words) = each_line.split(':',1)
            if name == '小甲鱼':
                boy.append(words)
            if name == '小客服':
                girl.append(words)

      else:
            save_file(boy,girl,count)
            
            boy = []
            girl = []
            count += 1

    save_file(boy,girl,count)

    f.close()   


save_file('record.txt')


               


错误类型:
TypeError: save_file() missing 2 required positional arguments: 'girl' and 'count'

qiuyouzhi 发表于 2020-4-14 13:57:59

你自己看save_file要的参数,
要一个boy,girl和count,一共3个
你只给一个算什么??

永恒的蓝色梦想 发表于 2020-4-14 14:01:23

接口:def save_file(boy,girl,count):调用save_file('record.txt')秀儿是你吗?

悠悠2264 发表于 2020-4-14 14:03:22

本帖最后由 悠悠2264 于 2020-4-14 14:05 编辑

save_file('record.txt')这句代码你写错了,你应该调用split_file()这个(先调用split_file()处理文本,再调用save_file()保存),这行代码应改成:
split_file('record.txt')

miusa 发表于 2020-4-14 14:05:23

啊,我康康

qiuyouzhi 发表于 2020-4-14 14:06:15

miusa 发表于 2020-4-14 14:05
我给的是split_file的参数,save_file的参数是在split_file里面设置的啊

你看参考答案

那你为啥要调用save_file???

miusa 发表于 2020-4-14 14:07:31

永恒的蓝色梦想 发表于 2020-4-14 14:01
接口:调用秀儿是你吗?

{:10_266:}完了,被自己蠢死了

miusa 发表于 2020-4-14 14:08:31

qiuyouzhi 发表于 2020-4-14 13:57
你自己看save_file要的参数,
要一个boy,girl和count,一共3个
你只给一个算什么??

算……耍流氓

miusa 发表于 2020-4-14 14:13:19

qiuyouzhi 发表于 2020-4-14 14:06
那你为啥要调用save_file???

{:10_277:}大概是因为蠢,醒来的一瞬间,开始后悔为什么在发这个贴子之前,不把眼镜擦亮一点{:10_266:}

miusa 发表于 2020-4-14 14:14:44

悠悠2264 发表于 2020-4-14 14:03
save_file('record.txt')这句代码你写错了,你应该调用split_file()这个(先调用split_file()处理文本,再 ...

{:10_266:}被自己蠢哭了

qiuyouzhi 发表于 2020-4-14 14:15:07

miusa 发表于 2020-4-14 14:13
大概是因为蠢,醒来的一瞬间,开始后悔为什么在发这个贴子之前,不把眼镜擦亮一点

嗯,我也有过这种经历。。。

miusa 发表于 2020-4-14 14:16:20

qiuyouzhi 发表于 2020-4-14 14:15
嗯,我也有过这种经历。。。

现在删帖挽尊,毁尸灭迹是不是来不及了{:10_266:}

qiuyouzhi 发表于 2020-4-14 14:17:30

miusa 发表于 2020-4-14 14:16
现在删帖挽尊,毁尸灭迹是不是来不及了

来不及了{:10_250:}
你得联系版主,但我估计版主不一定会给你删

miusa 发表于 2020-4-15 12:45:47

qiuyouzhi 发表于 2020-4-14 14:17
来不及了
你得联系版主,但我估计版主不一定会给你删

那就让他随风而去吧{:10_266:}难过
页: [1]
查看完整版本: 31讲动动手,求指点这参数哪里有问题