gpt4 book ai didi

python - 使用变量作为关键字分配关键字参数的大多数pythonic方式?

转载 作者:太空狗 更新时间:2023-10-29 17:52:29 27 4
gpt4 key购买 nike

解决以下问题的最pythonic 方法是什么?从交互式 shell:

>>> def f(a=False):
... if a:
... return 'a was True'
... return 'a was False'
...
>>> f(a=True)
'a was True'
>>> kw = 'a'
>>> val = True
>>> f(kw=val)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: f() got an unexpected keyword argument 'kw'

目前我用以下方法解决了这个问题:

>>> exec 'result = f(%s=val)' % kw
>>> result
'a was True'

但是看起来很笨拙...

(python 2.7+ 或 3.2+ 解决方案都可以)

最佳答案

使用keyword argument unpacking :

>>> kw = {'a': True}

>>> f(**kw)
<<< 'a was True'

关于python - 使用变量作为关键字分配关键字参数的大多数pythonic方式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6976658/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com