在 python 函数中,我是否需要预先分配一个在 if 下有条件出现的值?
def func(x,y):
if x == 1:
z = 2
else: pass
if y == 1:
print(z)
else: pass
我在这里看到了一个问题,如果x != 1
并且y == 1
,print(z)
可能会崩溃。为了潜在地防止此错误引发,我是否在函数开头声明 z = None
或使用 try- except 打印 z
或其他方法?最好的做法是什么?
最佳答案
简短的回答是肯定的。
如果您想在函数中稍后执行类似以下操作:print(z)
,则应首先分配 z
。
您有一些选择:
def func(x, y):
if x == 1:
z = 2
else:
z = None
# or
def func(x, y):
z = None
if x == 1:
z = 2
# or
def func(x, y):
z = 2 if x == 1 else None
关于python - 在 python 函数中,我是否需要预先分配一个在 if 下有条件出现的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61031506/