【问题标题】:How do I make a setup.py file for pygame?如何为 pygame 制作 setup.py 文件?
【发布时间】:2013-12-18 03:01:01
【问题描述】:

我为我的 pygame 执行程序创建了一个 setup.py 文件,但是当我在构建后尝试运行可执行文件时,它给出了一个巨大的错误列表。我正在使用 python 3.3 32 位和相应的 pygame。我的来源是

import sys
from cx_Freeze import setup, Executable

setup(
    name = "Pygame Module",
    version = "0.1",
    description = "A simple pygame program.",
    executables = [Executable("pygame_module.py", base = "WIN32GUI")])

帮助?

编辑:这是我得到的错误:http://imgur.com/XlOpzEg 编辑:这个问题是针对 cx-Freeze 的。我很抱歉没有提到这一点 编辑:我的来源是

import pygame, sys
from pygame.locals import *

pygame.init()
DISPLAYSURF = pygame.display.set_mode((400, 300))
pygame.display.set_caption('Hello World!')
    while True: # main game loop
    for event in pygame.event.get():
        if event.type == QUIT:
            pygame.quit()
            sys.exit()
    pygame.display.update()

这在 shell 中有效,但在制作模块时无效。它说 pygame 不是一个包。

【问题讨论】:

  • 你能至少显示一些错误吗,也许是使用 pastebin?最好是第一个,因为它们可能会导致以后的错误。

标签: python-3.x pygame cx-freeze


【解决方案1】:

我做到了!在C:\Python33\include 文件夹中,我删除了正在使用的 pygame 文件夹,而不是真正的文件夹 编辑!我重新安装了 python 3.3.3,它就像我说的那样工作,然后停止了。重新安装了 3.3.2,它现在可以工作了。我不知道为什么

【讨论】:

    【解决方案2】:

    我相信我知道您的问题,因为我自己也遇到过同样的问题,但如果没有 Traceback,我无法确定。尝试将pygame._viewre 模块手动导入到程序的每个文件中。例如。将行 import pygame._viewimport re 放入每个 python 文件中。如果这不能解决问题,请您发布错误回溯,我会看看我能做些什么。

    希望这会有所帮助。

    编辑:这不是上述问题的答案。如果找到正确答案,我将再次编辑。请参阅下面的 cmets。

    【讨论】:

    • 不,仍然有回溯错误。我也尝试将它放入设置中,但它拒绝以这种方式编译。
    • 您是否安装了 2 个或更多版本的 python?
    • 我有 3.3 32 位和相应的 pygame 和 cx-Freeze。如果我安装了任何其他 python 版本,我不知道它们。
    • 在您的 pygame 程序中,您是先导入了pygame 模块,还是只使用了from pygame.locals import *?如果没有,请尝试在 locals 导入上方添加行 import pygame
    • 我不知道发生了什么,但模块将不再生成 pygame 创建的窗口。这可能是问题
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-10-01
    • 1970-01-01
    • 2018-04-29
    • 2016-11-27
    • 1970-01-01
    • 1970-01-01
    • 2022-01-25
    相关资源
    最近更新 更多