Python 31课 课后作业
import pickledef save_file(boy,girl,count):
file_1name = 'boy_'+str(count)+'.txt'
file_2name = 'girl'+str(count)+'.txt'
f1 = open('D:\\'+file_1name,'wb')
f2 = open('D:\\'+file_2name,'wb')
pickle.dump(boy,f1)
pickle.dump(girl,f2)
f1.close()
f2.close()
def print_file(file_2name,file_1name):
f3 = open('D:\\'+file_1name,'rb')
f4 = open('D:\\'+file_2name,'rb')
my_f3 = pickle.load(f3)
my_f4 = pickle.load(f4)
print(f3)
print(f4)
def spilt_file(file_name):
f0 = open(file_name)
boy = []
girl = []
count = 0
for each_line in f0:
if each_line[ :12] != '============':
each_line.split(':',1)
if each_line=='小客服':
girl.append(each_line)
if each_line=='小甲鱼':
boy.append(each_line)
else:
save_file(boy,girl,count)
boy = []
girl = []
count = count + 1
save_file(boy,girl,count)
f0.close
print_file(file_2name,file_1name)
file_name = input('请输入文件')
spilt_file(file_name)
各位好,我想在原来的函数中添加一个把之前保存的文件打印到屏幕上的函数print_file(file_2name,file_1name),但是报错print_file函数中形参未定义。请问如何修改该形参,才可以打开之前保存的文件,并打印在屏幕上。
执行print_file(file_2name,file_1name)时找不到file_2name,file_1name这两个变量,因为它们只是在函数def save_file(boy,girl,count):中被定义,属于局部变量。 左边括号是中文的,改成英文的即可 新人,求问课后作业在哪里看呀,找了半天,哭晕 你没有用英文的逗号!! 冬雪雪冬 发表于 2018-9-11 08:44
执行print_file(file_2name,file_1name)时找不到file_2name,file_1name这两个变量,因为它们只是在函数def ...
那请问如何设置print_file(file_2name,file_1name)中的形参,可以正常调用函数,打印保存的文件到屏幕上。 将def save_file(boy,girl,count):中 file_1name file_2name设为全局变量
页:
[1]