我对python很陌生,我正在尝试使用py2exe从我编写的python代码中创建一个exe文件。在关于如何使用setup.py的教程之后,我创建了以下py2exe文件:
from distutils.core import setup
from glob import glob
import py2exe
setup(console=['App.py'])
data_files = [("msvcr90.dll", glob(r'C:\Windows\winsxs\x86_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.21022.8_none_bcb86ed6ac711f91\msvcr90.dll\*.*'))]
setup(data_files=data_files, etc)
sys.path.append("C:\Windows\winsxs\x86_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.21022.8_none_bcb86ed6ac711f91\msvcr90.dll")当我试图在cmd中运行它时,我会得到以下错误:
SyntaxError: non-keyword arg after keyword arg我读过其他几篇关于这个错误的文章,基本上是说我应该在"data_files“之前加上"etc”。但是,当我这样做时,我会得到一个名称错误undefined name sys。
我想将msvcr90.dll文件包含在setup.py中
有什么办法解决这个问题吗?
发布于 2016-06-24 17:25:52
我读过关于这个错误的其他几篇文章,基本上是说我应该在“”之前加上"etc“。但是,当我这样做时,我会得到一个名称错误
undefined name sys。
这就是这个问题的解决方案,尽管这样您就会在etc中遇到相同的错误,因为它没有在任何地方定义(我相信它是用来说明setup可以接受其他参数,而不是用于您的代码中)。
您将获得undefined name sys,因为这是代码中另一个无关的问题。
您应该添加import sys。
from distutils.core import setup
from glob import glob
import py2exe
import sys
setup(console=['App.py'])
data_files = [("msvcr90.dll", glob(r'C:\Windows\winsxs\x86_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.21022.8_none_bcb86ed6ac711f91\msvcr90.dll\*.*'))]
setup(data_files=data_files)
sys.path.append("C:\Windows\winsxs\x86_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.21022.8_none_bcb86ed6ac711f91\msvcr90.dll")https://stackoverflow.com/questions/38018959
复制相似问题