You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

关闭PyGame编写的Python程序时触发WinError 10054错误求助

解决PyGame程序关闭时的EOFError: [WinError 10054]问题

嘿,这个问题我之前也碰到过!其实这不是你的PyGame代码有bug,而是PyScripter IDE背后的rpyc(远程过程调用)机制搞的小麻烦。

问题原因

当你关闭PyGame窗口时,程序直接终止,但PyScripter还在尝试通过rpyc连接和你的程序通信——结果连接被强制断开,就弹出了这个EOFError: [WinError 10054]错误。本质上是IDE的通信残留问题,不影响你的程序功能。

解决方法

给你几个实用的方案,按需选择:

  • 方案1:直接忽略
    如果这个错误不影响你的开发流程,完全可以不管它——它只是个“事后通知”,不会破坏你的程序逻辑或者导致数据丢失。

  • 方案2:让程序优雅退出
    在处理PyGame的退出事件时,先手动清理PyGame资源,再正常终止程序,给IDE一个“我要退出了”的信号,避免强制断连:

    import pygame
    import sys
    
    # 初始化PyGame
    pygame.init()
    screen = pygame.display.set_mode((800, 600))
    
    # 主循环
    running = True
    while running:
        for event in pygame.event.get():
            if event.type == pygame.QUIT:
                # 先关闭所有PyGame资源
                pygame.quit()
                # 正常终止程序
                sys.exit()
        # 你的绘图/逻辑代码...
    
  • 方案3:修改PyScripter的运行设置
    打开PyScripter的Tools -> Options,找到Run标签页,尝试关闭“Use remote interpreter”或者勾选“Run in external console”选项。这样PyScripter就不会用rpyc来运行你的程序,自然就不会出现这个错误了。

内容的提问来源于stack exchange,提问作者ShayP

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 10:24:25