我的 Python 线程启动但没有执行任何操作

My Python thread starts but doesn't do anything

我正在研究自定义基本函数以简化我的编码,例如 wait(seconds) 或 msg(...),现在我正在研究 window 设置和更新,它有效,但是当我把它放在一个线程中时,它什么也做不了。我没有收到任何错误,所以我感到困惑和沮丧。我不需要你调试它或任何东西,我只需要帮助知道问题出在哪里以及为什么会出现问题。

到目前为止,这是我的脚本(脚本在底部):

#   Imports
if True:
    import pygame, math, random, time, sys, threading
    from pygame.locals import *
    pygame.init()


#   Setup
if True:
    win_n = "New Project"
    win_w = 800
    win_h = 600
    win_c = (0, 0, 0)

#   Code
if True:
    def wait(seconds):
        time.sleep(seconds)
    def wait_until(bool):
        while not bool:
            wait(0.001)

#   Execute
if True:
    def e_ws():
        mainClock = pygame.time.Clock()
        pygame.display.set_caption(win_n)
        monitor_size = [pygame.display.Info().current_w, pygame.display.Info().current_h]
        screen = pygame.display.set_mode((win_w, win_h), pygame.RESIZABLE)
        fullscreen = False
        while True:
            screen.fill(win_c)
            for event in pygame.event.get():
                if event.type == QUIT:
                    pygame.quit()
                    sys.exit()
                if event.type == VIDEORESIZE:
                    if not fullscreen:
                        screen = pygame.display.set_mode((event.w, event.h), pygame.RESIZABLE)
                if event.type == KEYDOWN:
                        if fullscreen:
                            screen = pygame.display.set_mode(monitor_size, pygame.FULLSCREEN)
                        else:
                            screen = pygame.display.set_mode((screen.get_width(), screen.get_height()),
                                                             pygame.RESIZABLE)
            pygame.display.update()
            mainClock.tick(60)
    t_ws = threading.Thread(target=e_ws)
    t_ws.start()
    print("done")

运行 来自命令行的带有 python yourscriptname.py 的脚本。