【问题标题】:exe created complains about ImportError: no module named pytzexe 创建的关于 ImportError 的抱怨:没有名为 pytz 的模块
【发布时间】:2013-06-09 06:37:37
【问题描述】:

我使用 py2exe 创建了一个 python 可执行文件。当我运行exe时,我收到以下错误:

I:\YYY\dist>gui.exe   
Traceback (most recent call last):   
  File "gui.py", line 31, in <module>   
ImportError: No module named pytz  

但是,在 python 解释器中,我可以毫无问题地导入 pytz。

I:\YYY\dist>python  
Python 2.7.5 (default, May 15 2013, 22:43:36) [MSC v.1500 32 bit (Intel)] on win32  
Type "help", "copyright", "credits" or "license" for more information.  
>>> import pytz   
>>>

非常感谢解决上述问题的任何帮助。

【问题讨论】:

    标签: python python-2.7 py2exe pytz


    【解决方案1】:

    使用以下选项调用 setup():

    setup(..., options={
        'py2exe': {
            'packages': [
                'pytz',
            ],
        },
    })
    

    【讨论】:

    • 非常感谢。按照建议对“setup.py”进行修改后,exe创建本身失败。堆栈跟踪太长,无法在此处添加。以下是堆栈跟踪中的几行:I:\XXX>python setup.py py2exe running py2exe ... File "setup.py", line 6, in 'packages':['pytz'] File "e :\Install\Python27\lib\distutils\core.py",第 152 行,在 setup dist.run_commands() ..... 文件 "e:\Install\Python27\lib\site-packages\py2exe\mf.py ”,第 204 行,在 find_head_package 中引发 ImportError,“没有名为的模块”+ qname ImportError:没有名为 pytz 的模块
    • 你有多个版本的python吗?
    • 据我所知,我有'python 2.7.5'。有没有一种万无一失的方法来确保我的主机上只有 python 版本?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-12-09
    • 2013-03-11
    • 1970-01-01
    • 2012-05-23
    • 2019-07-29
    • 2015-07-04
    • 2014-03-15
    相关资源
    最近更新 更多