假设我有一个带有这个签名的函数:
def foo(a=5, b=10, c=15)
假设我还有一个变量 x,其值为“a”、“b”或“c”。实际上,我想做的是:
foo(**{x: 7})
但似乎有一种更直接的方法可以做到这一点。我的怀疑是否正确?
请您参考如下方法:
每当您想做一些通常是静态的动态事情时,Python 通常会强制您明确说明(因为 explicit is better than implicit )。
所以,在这种情况下,是的,foo(**{x: 7}) 可能是最符合 Python 风格的编写方式。
