【发布时间】:2011-09-18 03:23:14
【问题描述】:
是否存在等效于 Ruby ||= 运算符(“如果未设置变量,请设置变量”)的 Python?
Ruby 中的示例:
variable_not_set ||= 'bla bla'
variable_not_set == 'bla bla'
variable_set = 'pi pi'
variable_set ||= 'bla bla'
variable_set == 'pi pi'
【问题讨论】:
-
如果未设置则不设置 - 如果当前值为 false(
false或nil)则设置。当然,这种区别在语言中更为重要,例如将 0 和 "" 视为 false,但仍然 -
这个 ruby 运算符的用例是什么?
-
这样做的方法是使用除 phihag 指示的 NameError 之外的尝试,但这在 Python 中没有任何意义,正如这里每个人所说的那样。在 Ruby 中,由于人们传递任意代码块以在函数内部运行的方式,它更有用。目标函数可能需要设置一个未在其执行的外部块中初始化的变量。 Python 中没有这种情况。
标签: python variables conditional