如果已加星标的表达式为空,如何给出默认参数

时间:2017-09-10 13:32:14

标签: python tkinter

我有tkinter OptionMenu的函数调用,如下所示:

tk.OptionMenu(container, targetVar, *list(accountMap))

accountMap是我希望在Optionmenu中出现的值的字典,但在某些情况下,字典可能是空的,这意味着已加星标的表达式不会出现在OptionMenu中。 t返回任何参数,并且对{{1}}的函数调用抱怨没有给出足够的参数。如果星号表达式什么都不返回,我怎么能添加空字符串的默认值?

3 个答案:

答案 0 :(得分:1)

*(accountMap or [""])

list实际上是多余的。

答案 1 :(得分:0)

只需使用一行if语句:

tk.OptionMenu(container, targetVar, *accountMap if accountMap else [' '])

这可以作为空字典返回false

文档说here如果您感兴趣,会将哪些值视为false

希望这有帮助!

答案 2 :(得分:-1)

使用更复杂的表达式:

'