Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/289.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python 2.7脚本的exe转换_Python_Python 2.7_Tkinter_Py2exe - Fatal编程技术网

python 2.7脚本的exe转换

python 2.7脚本的exe转换,python,python-2.7,tkinter,py2exe,Python,Python 2.7,Tkinter,Py2exe,我已经在Python2.7中编写了一个python脚本,在使用py2exe包对该文件进行exe转换后,我遇到了一个问题。我已经得到了exe文件,但当我运行时,我得到了一个错误,我已经在下面提到。请注意,我保存了名为test.py的脚本文件。请告诉我问题所在@Bryan Oakley from Tkinter import * import os from os.path import expanduser import time import datetime from docx import

我已经在Python2.7中编写了一个python脚本,在使用py2exe包对该文件进行exe转换后,我遇到了一个问题。我已经得到了exe文件,但当我运行时,我得到了一个错误,我已经在下面提到。请注意,我保存了名为test.py的脚本文件。请告诉我问题所在@Bryan Oakley

from Tkinter import *
import os
from os.path import expanduser
import time
import datetime
from docx import Document
from docx.shared import Inches

document = Document()
docx_prefix = "Doc_File_"

home_directory = expanduser("~")
folder_directory = home_directory + "\myapp"
doc_file_directory = folder_directory + "/"

if not os.path.exists(folder_directory):
    os.makedirs(folder_directory)

def create_file():

        now = datetime.datetime.now()
        current_time = now.strftime("%Y-%m-%d %H%M%S")
        file_name =  docx_prefix + current_time

        document = Document()

        document.add_paragraph("word document")
        document.save(doc_file_directory + file_name + '.docx')

main_root = Tk()
main_root.title("Toolbar")
main_root.geometry('105x26+1+1')

toolbar = Frame(main_root, bg="gray")
toolbar.pack(side="top")

create_file_button = Button(toolbar, text="Create File", command = 
create_file, bg="gray", width=10)
create_file_button.pack(side="left")

main_root.mainloop()
使用py2exe进行exe转换的安装文件:

from distutils.core import setup
import py2exe
setup(
    console=['test.py'],
    options = {'py2exe': {'packages' : ['docx']}}
)
exe转换后,我收到以下错误:

C:\Python27\Lib\site-packages\py2exe\samples\scripting\dist>test.exe
Traceback (most recent call last):
File "test.py", line 6, in <module>
File "docx\__init__.pyc", line 3, in <module>
File "docx\api.pyc", line 14, in <module>
File "docx\package.pyc", line 11, in <module>
File "docx\opc\package.pyc", line 12, in <module>
File "docx\opc\part.pyc", line 12, in <module>
File "docx\opc\oxml.pyc", line 12, in <module>
File "lxml\etree.pyc", line 12, in <module>
File "lxml\etree.pyc", line 10, in __load
File "src/lxml/lxml.etree.pyx", line 92, in init lxml.etree 
(src\lxml\lxml.etree.c:225327)
ImportError: cannot import name _elementpath
C:\Python27\Lib\site packages\py2exe\samples\scripting\dist>test.exe
回溯(最近一次呼叫最后一次):
文件“test.py”,第6行,在
文件“docx\\ uuuuu init\ uuuuu.pyc”,第3行,在
文件“docx\api.pyc”,第14行,在
文件“docx\package.pyc”,第11行,在
文件“docx\opc\package.pyc”,第12行,在
文件“docx\opc\part.pyc”,第12行,在
文件“docx\opc\oxml.pyc”,第12行,在
文件“lxml\etree.pyc”,第12行,在
加载文件“lxml\etree.pyc”,第10行
文件“src/lxml/lxml.etree.pyx”,第92行,在init lxml.etree中
(src\lxml\lxml.etree.c:225327)
ImportError:无法导入名称\u元素路径

模块
lxml
不是纯Python。它依赖于用C编写的DLL。您需要在
py2exe
包中添加
etree.pyd
objectify.pyd
。它们位于
site packages\lxml

中。您可以发送更新的安装文件进行exe转换吗?要执行此操作并进行测试,我需要您环境的完整副本,而且您正在另一个操作系统中工作。这是一个很高的要求。查看
py2exe
文档以获取帮助,您可能会发现这个问题非常有用:。您能告诉我python docx包的替代方案意味着我可以使用其他包来完成此任务吗?@Bryan Oakley请回答这个问题。