Python If语句以一种奇怪的方式工作
我正在使用一个if循环,它以一种非常奇怪的方式工作。下面是代码的结构:Python If语句以一种奇怪的方式工作,python,if-statement,Python,If Statement,我正在使用一个if循环,它以一种非常奇怪的方式工作。下面是代码的结构: for i in range(0, N): for j in range(0, M): if ((A - B[j]) == 0): print i, f[j] [...] print 'test' f[j]仅在if((A-B[j])==0)中定义。当我运行脚本时,首先它打印I,f[j]和test,然后,当((A-B[j])==0
for i in range(0, N):
for j in range(0, M):
if ((A - B[j]) == 0):
print i, f[j]
[...]
print 'test'
f[j]
仅在if((A-B[j])==0)
中定义。当我运行脚本时,首先它打印I,f[j]
和test
,然后,当((A-B[j])==0)
不再为真时,它只打印test
我应该怎么做才能使脚本正常运行 在纠正语法和缩进后,它对我来说就像你所期望的那样有效:
A = 3
B = range(10)
f = range(10)
for i in range(10):
for j in range(len(B)):
if (A == B[j]):
# if ((A - B[j]) == 0):
print i, f[j]
print 'test'
--输出--
检查缩进中是否混合了空格和制表符。是否确定代码缩进正确?代码语法错误,在“for”语句末尾缺少冒号。能否发布一些输入和预期输出?此外,您的缩进不一致,第二行缩进2个空格,第三行缩进5个空格,其余缩进8个空格。您的术语是错误的。在两个for循环中有一个if语句。没有“if循环”这样的东西。如果是条件分支,循环将重复一个操作。它们是非常不同的控制结构。
0 3
test
1 3
test
2 3
test
3 3
test
4 3
test
5 3
test
6 3
test
7 3
test
8 3
test
9 3