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

Python Pyinstaller-从不同路径导入模块(脚本为空,用作临时文件),python,python-3.x,pyinstaller,Python,Python 3.x,Pyinstaller,_______________________编辑_______________________________ 你好,谢谢你来这里 我试图包括“temp”——一个自制程序的文件,保存在一个名为temp的自制路径中。它们位于路径“C:\Users\isaac\Desktop\description Plot for Material Consumption”[img of folder][1] 现在的主要问题是: 如果我执行命令Simulation,并且SimulationGUI出现,它将无法获

_______________________编辑_______________________________

你好,谢谢你来这里

我试图包括“temp”——一个自制程序的文件,保存在一个名为temp的自制路径中。它们位于路径
“C:\Users\isaac\Desktop\description 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'
在这里我将附加一些代码。。。我试图做的是:将路径“Temp(参见img,此路径由我创建)”包含到exe。。。因为我的程序需要用python编写的临时文件。 我已经试过解释程序的工作原理,请阅读:

  • 我打开DPMC MAINGUI->如果我在列表框中选择一个csv文件,它会将所有数据保存在Tempfile中,保存在名为log、temp、temp2和searchlog的diles中(所有python脚本)
  • 我打开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
    

    我推荐并使用它使用pyinstaler,并且有一个非常好的ui。所有的设置都可用,并且它始终适用于我,当您说“这根本不起作用”时,您会收到什么错误消息?将完整的控制台输出编辑到您的问题中。您好,barny,ty,请回答。我现在更新了帖子。您需要调整加载csv文件的代码以使用path sys.\u MEIPASS(或类似的内容-在此处搜索应该可以找到关于它的问题解答)因为当exe运行时,这些文件不在非pyinstalller位置,而是与exe中的其他文件一起自动提取。csv文件正在运行,Maingui运行良好,只要我在我的计算机上运行它…(我使用AutoYexe进行编译)问题是,如果我在另一台计算机上运行它,其他模块似乎没有运行…好的,很好,我知道了。。。我只导入了一个隐藏模块,现在它工作得很好:)非常感谢!
    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