导入带有可选参数的模块

2024-04-23 07:45:06 发布

您现在位置:Python中文网/ 问答频道 /正文

目前,我有一个文件名为实用程序.py我把所有的函数和另一个叫做主.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\ u league函数添加可选参数,方法是将函数更改为:

def save_league(name = league_name, r = records):
    with open('%s.json' % name, 'w') as f:
        f.write(json.dumps(r))

这样,文件将仅从save\u league()保存。你知道吗

但是,当我尝试在中导入带有可选参数的函数时主.py,我得到一个名称错误,因为默认参数没有设置在开头。你知道吗

NameError: name 'league_name' is not defined

是否可以将带有可选参数的函数导入到另一个文件中,还是必须将两个文件合并到一个文件中?你知道吗


Tags: 文件函数namepyjson参数savedef