因此,在一個列表中,我需要檢查'z'是否與所選情況位於同一行,並返回True,但是如果某事正在運行,例如'x',它將返回False。我做了一個代碼,但它存在的問題是,如果有兩個'z',左邊的那個被'x'阻塞,但另一個不是,它返回False,但它應該是True。它適用於其他情況。希望你得到我,我很難解釋這些事情。Python列表檢查
def row(lst,i,j):
c = 0
if 'z' not in lst[i]:
c += 1
else:
for n in range(0,len(lst[i])):
if lst[i][n] == 'z' and n > j:
for m in range(j,n):
if lst[i][m] == 'x':
c += 1
else:
c = 0
break
if lst[i][n] == 'z' and j > n:
for m in range(n,j):
if lst[i][m] == 'x':
c += 1
else:
c = 0
break
if c > 0:
return False
elif c == 0:
return True
我真的不知道究竟是什麼「突破」在這裏,但它的工作原理 我使用的列表是:
lst = [['_','_','_','_','_'],['z','x','_','_','z'],['_','_','x','_','_']]
,我檢查的情況爲lst [1] [ 2]。
['_','x','_','_','z']
返回True,行中有'z'。
['_','x','_','x','z']
返回FALSE,z爲被封鎖
['z','x','_','x','z']
個返回False
['z','x','_','_','z']
問題:應該返回True
你應該閱讀'break'。並詢問誰寫了這些代碼,以防你沒有。 –
'x'阻止'z'是什麼意思? –
@AndrasDeak我寫了它 – bajotupie