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



______________________编辑_______________________________

你好,谢谢你来这里。

我试图包含一个自制程序的"temp"文件,这些文件保存在一个名为temp的自制路径中。这些文件在路径"C:UsersisaacDesktopDescribing Plot for Material Consumption"中。[img文件夹][1]

现在的主要问题是:如果我执行命令Simulation,并且SimulationsGUI出现,它无法获取数据,这些数据将保存在Temp文件中。有时有效,有时无效?需要明确的是,如果我通过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 MAINGUI->如果我在列表框中选择csv FIle,它会将所有数据保存在temp文件中,保存在名为log、temp、temp2和searchlog的diles中(所有python脚本(
  2. 我打开SimulationsGUI,现在SimulationsGUI可以加载保存在tempscripts temp、temp2和searchlog中的所有数据。但要显示绘图数据,它需要访问日志文件。(我通过runpy运行模块打开模块…,mb这是错误吗?(

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

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

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

我推荐并使用autopytoexe,它使用了pyinstaler,并且有一个非常好的ui。所有的设置都是可用的,它总是适用于我这个