Python 如何在py2app构建中使用xlwt

Python 如何在py2app构建中使用xlwt,python,excel,macos,xlwt,py2app,Python,Excel,Macos,Xlwt,Py2app,我已经成功地使用xlwt在脚本末尾输出了一个excel文件,但当该脚本转换为独立程序(使用py2app)时,将不再生成此excel。其他导入的包(用于GUI的Tkinter)工作正常,我找不到一个地方出现同样的问题。 (Mac OS 10.9.5、python 2.7.5:预装Mac版本) (xlwt存在于/build/bdist.macosx-10.9-intel/python2.7-standalone/app/site packages/中) 问题被隔离到一个非常小的脚本中,该脚本输出一个

我已经成功地使用xlwt在脚本末尾输出了一个excel文件,但当该脚本转换为独立程序(使用py2app)时,将不再生成此excel。其他导入的包(用于GUI的Tkinter)工作正常,我找不到一个地方出现同样的问题。 (Mac OS 10.9.5、python 2.7.5:预装Mac版本) (xlwt存在于/build/bdist.macosx-10.9-intel/python2.7-standalone/app/site packages/中)

问题被隔离到一个非常小的脚本中,该脚本输出一个excel文件,其中有一个填充的单元格:

def export_xcl():
    import xlwt

    wb = xlwt.Workbook()#initialize excel sheet
    ws = wb.add_sheet('Sheet1')

    text_cells=xlwt.easyxf('font: name Times New Roman')

    ws.write(0,0, 'jaja',text_cells)

    print ('voor het saven')

    wb.save('testx.xls')

    print ('na het saven')

if __name__ == '__main__':
    export_xcl()
此脚本在正常启动时运行良好

但是,可执行文件没有。py2app使用的setup.py文件如下:

from setuptools import setup

APP = ['testx.py']
DATA_FILES = []
OPTIONS = {'argv_emulation': True}

setup(
app=APP,
data_files=DATA_FILES,
options={'py2app': OPTIONS},
setup_requires=['py2app'],
)
wb.save('../../../testx.xls')
现在运行以下命令:$python setup.py py2app 生成独立程序,该程序在打开时不会生成excel工作表


我在不同的网站上读到,人们在他们的构建中包含了xlwt脚本,没有任何问题,因此我希望有人能为我指出正确的方向。

最后,问题在于MyApplication.app后面的隐藏文件夹。当发出以下命令时:

wb.save('testx.xls
excel文件将保存在MyApplication.app/Contents/Resources/testx.xls下。 要保存在与运行文件相同的目录中,请使用以下命令:

from setuptools import setup

APP = ['testx.py']
DATA_FILES = []
OPTIONS = {'argv_emulation': True}

setup(
app=APP,
data_files=DATA_FILES,
options={'py2app': OPTIONS},
setup_requires=['py2app'],
)
wb.save('../../../testx.xls')

如果给出了明确的位置,则不会出现此问题。

%PythonDir%\Lib\site包中是否有名为
xlsxriter
的文件夹(/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/Lib)。这是我要找的文件夹吗?我的意思是
xlwt
,而不是
xlsxwriter
那里也没有xlwt(如果我确实在正确的文件夹中)。我刚刚意识到你在mac上,所以我不确定这会有多大帮助,但我在
py2exe
上遇到了同样的问题,在互联网上找不到任何帮助。我所能找到的所有建议都是在
选项中添加
“includes”:“xlwt”
,但我最终不得不将原始
xlwt
文件夹移动到
%PythonDir%\Lib\site packages
,它才能最终工作。希望有人能给你一个更好的答案。祝你好运