将所有变量初始化为除一个TBD变量之外的公共值

时间:2014-04-13 03:34:40

标签: python

Pythonic函数如何将5+个变量初始化为False,然后使用函数参数知道哪个应该为True?

更新: 这里有更多细节......

def func(var_to_be_True):
    foo, bar, baz, ... = False, False, False, ...
    # more code based on which ones are False and which one is True...

func('bar')

两个问题:

  1. 我想告诉func哪个变量是True。我将它显示为字符串,但它必须是变量名。

  2. 如果我有20个变量怎么办?我可以设置一个循环来将所有内容设置为False吗?再一次,我对这种字符串混乱感到困惑。

  3. 似乎很基本。我是一个菜鸟,可能缺少一些基本的东西。

1 个答案:

答案 0 :(得分:2)

不完全清楚你想要什么,但这是一种方式:

def func(var1=False, var2=False, var3=False, var4=False, var5=False):
    pass

默认情况下,所有变量均为False。您可以通过将变量设置为True

来调用该函数
func(var3=True)

通过这样做,除False

之外的所有其他人都是var3