我有一個類並且在其中有一個有一個循環的方法。我想要做的就是在頂部只運行一次陳述milliseconds = 0
。如何在Python中僅從語句中獲取一次值
但是,當我運行附加的代碼,它保持重置爲0.然後,我想要的是,如果經過,每毫秒可以增加200毫秒。我曾嘗試將milliseconds = 0
置於班級之下或班外,並且不起作用。我能做什麼?
編輯:我的新問題,我該如何使它可以計數到5000毫秒前進展到下一段代碼。
class Flag():
def Flagrun(self):
flagactive = 'No'
milliseconds = 0
flaggen = str(randint(1,4))
milliseconds += 200
print(milliseconds)
if milliseconds > 1000:
if flaggen == '1':
window.blit(flag, (58,89))
collisiondet()
flagactive = 'Yes'
milliseconds = 0
elif flaggen == '2':
window.blit(flag, (464,82))
collisiondet()
flagactive = 'Yes'
milliseconds = 0
elif flaggen == '3':
window.blit(flag, (343,215))
collisiondet()
flagactive = 'Yes'
milliseconds = 0
elif flaggen == '4':
window.blit(flag, (66,535))
collisiondet()
flagactive = 'Yes'
milliseconds = 0
如果你的'if'語句裏面的功能?在'flagrun'裏面,'milliseconds = 0'創建一個局部變量。 – cdarke
你做了什麼,把它放在「課下或課外」,沒有奏效? – TWReever
循環在哪裏?似乎代碼不完整。正如@cdarke所說的,你在函數中放了幾毫秒,所以它是一個局部變量。 – Flickerlight