擅长:python、mysql、java
<p>您可以在<code>for i in range(0,len(piecepositions))</code>中或使用增加的变量跟踪while循环中的哪一部分。
例如,类似这样的事情:</p>
<pre><code> while foundpiece == False:
index=0 #Reset index before checking all pieces
for x in piecespositions:
if x[0] == mousecoords[0] and x[1] == mousecoords[1]:
print("Great job you clicked a piece")
foundpiece = True
found_pos=x #store position of the piece that was found
index=index+1 #Keep adding to index to know which piece was found
pygame.display.flip() #Update the window
print (f"Piece found in {index}: {found_pos}") #print the position of the piece as well as what is its index in the list.
</code></pre>
<p>这将存储在<code>found_pos</code>中找到的工件的位置,并使用<code>index</code>变量跟踪当前正在检查的工件。while循环结束后,它将打印工件的位置和列表中该工件的索引</p>
<p>但请注意,在while循环期间,脚本将被“卡住”,直到while完成,因此在计件检查期间无法更新窗口,因此游戏将冻结。所以要解决这个问题,必须在while中添加<code>pygame.display.flip()</code></p>