|
发表于 2022-4-13 20:12:46
|
显示全部楼层
本帖最后由 isdkz 于 2022-4-13 20:20 编辑
因为那个是内层函数一个局部变量,外层函数是访问不到的,
想要外层函数可以访问的话,可以在外层函数定义(可变对象是可以在内层函数进行修改的),
也可以用一个变量接收返回值:
在外层函数定义变量:
- def save_files(file_name,name):
- '''name必须为人名:'''
- import pickle
- talk_ = [] # 注意这里
- def save_files():
- '''将文件要保存的内容作为列表保存'''
- f = open('record1.txt','r+')
- for i in f:
- if i.startswith(name):
- talk_.append(i.lstrip(name))
- f.close()
- save_files()
-
- pickle_file = open(file_name,'wb')
- pickle.dump(talk_,pickle_file)
- pickle_file.close()
- a = save_files('boy_.txt','小甲鱼:')
复制代码
使用一个变量接收返回值:
- def save_files(file_name,name):
- '''name必须为人名:'''
- import pickle
-
- def save_files():
- '''将文件要保存的内容作为列表保存'''
- f = open('record1.txt','r+')
- talk_ = []
- for i in f:
- if i.startswith(name):
- talk_.append(i.lstrip(name))
- f.close()
- return talk_
- takl_ = save_files() # 注意这里
-
- pickle_file = open(file_name,'wb')
- pickle.dump(talk_,pickle_file)
- pickle_file.close()
- a = save_files('boy_.txt','小甲鱼:')
复制代码 |
|