如何在 cx_Freeze 中使用 openpyxl
How to use openpyxl with cx_Freeze
我使用 openpyxl 修改现有的 excel 并将其与我的结果一起保存。它在终端上运行良好。
我尝试使用 cx_freeze 在 .exe 上运行我的项目。一切正常,期待与 openpyxl 的部分。
我猜它来自 "path",因为我使用:
current_path = str(os.path.dirname(os.path.realpath(__file__)))
file_path = current_path + r"\folder\filename.xlsx"
wb = openpyxl.load_workbook(file_path)
如何打开我的 excel 文件,该文件将存储在 .exe 旁边的文件夹中或将它们包含在 setup.py 中?我有几个模型。
在此先感谢您的帮助。
嗯..我在 cx_Freeze 文档中找到了它,抱歉!如果有帮助,请发布答案,为像我这样的初学者添加一些评论:
import sys
def find_data_file(filename):
if getattr(sys, 'frozen', False):
# The application is frozen: no need to change anything
datadir = os.path.dirname(sys.executable)
else:
# The application is not frozen: if you run it on terminal
# Change this bit to match where you store your data files:
datadir = os.path.dirname(__file__) #__file__ could be replace for example: os.path.realpath(__file__)
return os.path.join(datadir, filename)
在文件名中,不要忘记包含 \ : "\aFolder\myFile.xlsx"
它很适合我替换上面的代码(没有函数):
if getattr(sys, 'frozen', False):
current_path = str(os.path.dirname(sys.executable))
else:
current_path = str(os.path.dirname(os.path.realpath(__file__)))
file_path = current_path + r"\folder\filename.xlsx"
wb = openpyxl.load_workbook(file_path)
我使用 openpyxl 修改现有的 excel 并将其与我的结果一起保存。它在终端上运行良好。
我尝试使用 cx_freeze 在 .exe 上运行我的项目。一切正常,期待与 openpyxl 的部分。
我猜它来自 "path",因为我使用:
current_path = str(os.path.dirname(os.path.realpath(__file__)))
file_path = current_path + r"\folder\filename.xlsx"
wb = openpyxl.load_workbook(file_path)
如何打开我的 excel 文件,该文件将存储在 .exe 旁边的文件夹中或将它们包含在 setup.py 中?我有几个模型。
在此先感谢您的帮助。
嗯..我在 cx_Freeze 文档中找到了它,抱歉!如果有帮助,请发布答案,为像我这样的初学者添加一些评论:
import sys
def find_data_file(filename):
if getattr(sys, 'frozen', False):
# The application is frozen: no need to change anything
datadir = os.path.dirname(sys.executable)
else:
# The application is not frozen: if you run it on terminal
# Change this bit to match where you store your data files:
datadir = os.path.dirname(__file__) #__file__ could be replace for example: os.path.realpath(__file__)
return os.path.join(datadir, filename)
在文件名中,不要忘记包含 \ : "\aFolder\myFile.xlsx"
它很适合我替换上面的代码(没有函数):
if getattr(sys, 'frozen', False):
current_path = str(os.path.dirname(sys.executable))
else:
current_path = str(os.path.dirname(os.path.realpath(__file__)))
file_path = current_path + r"\folder\filename.xlsx"
wb = openpyxl.load_workbook(file_path)