我是一名刚接触 Python 的 RoR 程序员。我试图找到允许我将变量设置为特定值的语法,前提是它之前没有分配。基本上我想要:
# only if var1 has not been previously assigned
var1 = 4
最佳答案
您应该将变量初始化为 None 然后检查它:
var1 = None
if var1 is None:
var1 = 4
一行可以写成:
var1 = 4 if var1 is None else var1
或使用快捷方式(但建议检查无)
var1 = var1 or 4
或者,如果您没有为变量分配任何内容,则该变量名称不存在,因此稍后使用该变量会引发 NameError
,您也可以使用该知识来执行类似的操作
try:
var1
except NameError:
var1 = 4
但我建议不要这样做。
关于Python:如果不存在则赋值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7338501/