目前,我有一个名为utils.py的文件,其中保存了我的所有函数和另一个名为main.py的文件。
在我的utils文件中,我有一个加载并保存到json文件的两个函数,以及一些编辑数据的其他函数。
def save_league(league_name, records):
with open('%s.json' % league_name, 'w') as f:
f.write(json.dumps(records))
def load_league(league_name):
with open('%s.json' % league_name, 'r') as f:
content = f.read()
records = json.loads(content)
return records
我试图通过将函数更改为:
来为save_league函数添加可选参数def save_league(name = league_name, r = records):
with open('%s.json' % name, 'w') as f:
f.write(json.dumps(r))
这样文件只会从save_league()中保存。
但是,当我尝试在main.py中导入带有可选参数的函数时,我得到一个名称错误,因为默认参数未在开头设置。
NameError: name 'league_name' is not defined
是否可以将带有可选args的导入函数导入另一个文件,还是必须将这两个文件合并为一个?