使用字典中的命名参数调用函数

2024-04-28 11:15:23 发布

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

假设我有这样的功能:

def fun(n, m, verbose=0, use_fib_heap=False):
    '''blah blah'''
    pass

然后我解析命令行参数并尝试按指定方式运行它:

from sys import argv
opts = dict()
for arg in argv[1:]:
    if arg.startswith('--'):
        if '=' in arg:
            p, v = arg[2:].split('=')[:2]
            opts[p] = v
        else:
            p = arg[2:]
            opts[p] = True

如果我以python3 code.py --verbose=3 --use_fib_heap的身份运行代码,如何调用fun


Tags: in功能falseverboseifusedefarg
1条回答
网友
1楼 · 发布于 2024-04-28 11:15:23

正常调用函数即可

from sys import argv
opts = dict()
for arg in argv[1:]:
    if arg.startswith(' '):
        if '=' in arg:
            p, v = arg[2:].split('=')[:2]
            opts[p] = v
        else:
            p = arg[2:]
            opts[p] = True
        fun(with_params)

相关问题 更多 >