我有一个if,elif,else语句的python代码:
if line_num == 151:
if self.run_count == 1:
print(values[self.run_count-1])
elif line_num == 129:
if self.run_count == 2:
print(values[self.run_count-1])
elif line_num == 129:
if self.run_count == 3:
print("here")
else:
print(line_num)
f.write(line)
Run Code Online (Sandbox Code Playgroud)
代码对第一个if和elif语句正确执行.但是,您可以通过此输出看到当语句进入第3个elif语句(其中运行计数为3)时第三次运行代码时,它执行语句但不打印任何内容,并且不执行else语句.我已经检查了run_count是否确实是3并且它确实没有丢失我的程序.
有没有人有一个想法,虽然它可能会进入那个elif声明,但从来没有打印任何东西,当前一个工作正常并满足所有条件?
GWW*_*GWW 15
两个elif line_num == 129
语句都不会被执行,因为它们具有相同的条件.相反,尝试这样的事情:
if line_num == 151:
if self.run_count == 1:
print(values[self.run_count-1])
elif line_num == 129:
if self.run_count == 2:
print(values[self.run_count-1])
elif self.run_count == 3:
print("here")
else:
print(line_num)
f.write(line)
Run Code Online (Sandbox Code Playgroud)