在if语句中分配变量并在if语句的该部分被调用时不使用每个变量是不好的做法吗?if语句中的变量
例如在下面的代码中,我有两个代码选项。选项1如果触发器=='1'或触发器=='2',则变量y将不被使用,因为只有在触发器=='4'或触发器=='5'时才需要。选项2较长,但解决了这个问题。
# option 1
if trigger == '1' or trigger == '4':
x = int(start)
y = int(s1)
elif trigger == '2'or trigger == '5':
x = int(s1)
y = int(s2)
elif trigger == '3':
x = int(s2)
# option 2
if trigger == '1' or trigger == '4':
x = int(start)
elif trigger == '2'or trigger == '5':
x = int(s1)
elif trigger == '3':
x = int(s2)
if trigger == '4':
y = int(s1)
elif trigger == '5':
y = int(s2)
我的问题是哪一个是正确的,应该使用哪一个?
谢谢。
更新 -
因此,它是确定以设置一个变量,如果不使用它的IF函数(在这种情况下)被称为这一角色呢?这是不错的做法或导致内存问题等。 谢谢。
对我来说很好。如果在('1','4')中触发:',我会这样做,但是,它更加pythonic。 –
@JoelCornett:'如果'14''中的触发器做同样的事情并且需要更少的击键 – inspectorG4dget
@ inspectorG4dget - 但是在触发==“14”'的情况下失败。 – detly