Pyinstaller从不同路径导入模块(脚本为空,用作临时文件)

2024-09-29 06:35:13 发布

您现在位置:Python中文网/ 问答频道 /正文

(小标题)编辑(小标题)编辑(小标题)编辑(小标题)编辑(小标题)编辑

你好,谢谢你来这里

我试图包括“temp”——一个自制程序的文件,保存在一个名为temp的自制路径中。它们位于路径"C:\Users\isaac\Desktop\Describing Plot for Material Consumption".[img of folder][1]

现在的主要问题是: 如果我执行命令Simulation,并且SimulationGUI出现,它将无法获取数据,这些数据将保存在临时文件中。有时有效,有时无效?要明确的是,如果我正常地通过python运行代码,那么所有的事情都可以正常工作。。。如果我重新启动程序,GUI——有时——会得到我得到的数据,但事实并非如此。。有时会出现以下错误:

  File "<string>", line 2, in <module>
ModuleNotFoundError: No module named 'win32com'
Traceback (most recent call last):
  File "<string>", line 2, in <module>
ModuleNotFoundError: No module named 'win32com'

但是正如我所说的,如果我通过python运行程序,它就会正常工作

主文件是DPMC,它使用sys.path.append(“Temp”)(我应该更改它吗?)

pyinstaller的代码如下所示:

 pyinstaller -y -i "C:/Users/isaac/Documents/Programmierung/DPMC/imgs/icon.ico" 
--add-data "C:/Users/isaac/Documents/Programmierung/DPMC/README.txt";"." 
--add-data "C:/Users/isaac/Documents/Programmierung/DPMC/Datafolder";"Datafolder/" 
--add-data "C:/Users/isaac/Documents/Programmierung/DPMC/imgs";"imgs/" 
-p Programmierung/DPMC/Temp 
--hidden-import objectseeker 
--hidden-import Logfile --hidden-import classes 
--hidden-import SimulationsGUI  "C:/Users/isaac/Documents/Programmierung/DPMC/DPMC.py"

在这里我将附加一些代码。。。我试图做的是:将路径“Temp(参见img,此路径由我创建)”包含到exe。。。因为我的程序需要用python编写的临时文件。 我已经试过解释程序的工作原理,请阅读:

  1. 我打开DPMC主GUI->;如果我在列表框中选择一个csv文件,它会将所有数据保存在Tempfile中,保存在名为log、temp、temp2和searchlog的diles中(所有python脚本)
  2. 我打开SimulationGUI,现在SimulationGUI可以加载保存在TempScript temp、temp2和searchlog中的所有数据。但要显示打印数据,它需要访问日志文件。(我通过runpy run module…,mb打开模块,这是错误吗?)

所以我不知道错误到底在哪里。。。请帮帮我

这是用于导入的SimulationGUI代码,也是我真正想要做的:

from tkinter import *
import os
**def resource_path(relative_path):
    try:
        base_path = sys._MEIPASS
    except Exception:
        base_path = os.path.abspath(".")

    return os.path.join(base_path, relative_path)
sys.path.append(resource_path("Temp"))
from log import ***
import matplotlib.pyplot as plt
import numpy as np

Tags: 文件数据pathimport路径程序编辑users