我的程式不僅使用 Pygame,還使用 ??Tkinter,所以我在 pygame 視窗運行時運行了一個 tkinter 視窗。通常的做法是在 Pygame 代碼sys.exit()中停止pygame.error: video system not initialized錯誤,以下面的代碼片段為例。這樣做的問題是,如果您不僅在運行 pygame 代碼,那么這個“解決方案”將停止代碼中的所有內容,而不僅僅是 pygame 視窗。(僅供參考,這個錯誤不會使程式崩潰或停止,所以它只是一個控制臺的事情,但它仍然很煩人)。
import pygame, sys
while True: # event loop
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
sys.exit()
pygame.display.update()
那么,是否有任何替代方案sys.exit()只能退出 pygame 代碼?
uj5u.com熱心網友回復:
sys.exit()終止解釋器。pygame.quit取消初始化所有 pygame 模塊。一旦你呼叫了pygame.quit(),呼叫任何其他 pygame 陳述句都會導致例外。pygame.quit()在應用程式回圈后呼叫并洗掉sys.exit():
run = True
while run:
for event in pygame.event.get():
if event.type == pygame.QUIT:
run = False
# [...]
pygame.display.update()
pygame.quit()
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/469144.html
標籤:tkinter 游戏 python-3.9
上一篇:“無法將字串轉換為浮點數:''
