精英干员瑕光 2022-09-08 16:56 采纳率: 76.5%
浏览 20
已结题

python打包exe

我将以下代码打包成一个带cmd的exe,但当运行exe时只是弹了一下cmd就关闭了,并没有实际运行
而在没打包之前是可以正常运行的,我想知道这是为什么,以及我应该怎么更正


import psutil,os,time
class abc():
    def __init__(self):
        self.main()
    def main(self):
        print('开始清理')
        time.sleep(0.5)
        name='EXCEL.EXE'
        pids = psutil.pids()
        for pid in pids:
            p = psutil.Process(pid)
            if p.name() == name:
                cmd = r'taskkill /F /IM '+ name
                os.system(cmd)

        time.sleep(1)
        print('excel清理完毕')

if __name__=='__main__':
    a=abc()
    #a.main()

  • 写回答

4条回答 默认 最新

  • honestman_ 2022-09-08 17:04
    关注

    你可以截图cmd看一下,应该是缺少模块导致的,参考下面方法:
    打包过程中难免会遇到问题,一般都会遇到缺少模块的问题,比如,在对myscript.py打包时会报错ModuleNotFoundError,缺少xlrd, xlwt等模块,一般来说可以按照下面三个步骤进行解决:

    1.Pyinstalled会从本地的环境路径下找需要的模块,例如python的包都放在site-packages目录下,因此,Pyinstalled可以直接从该目录下获取需要的模块。如果本地也缺少该模块,先通过pip命令安装。例如:

    pip install xlrd

    pip install xlwt

    2.如果你需要的模块不在site-packages,而在你指定的目录下,那打包时你可以通过-P DIR参数指定,其中DIR为你需要的模块路径:

    pyinstaller -F -w -p DIR myscript.py

    -p命令允许指定多个模块路径,可以用:分隔,或者多次使用这个参数,像这样:pyinstaller -p DIR1:DIR2:DIR3 myscript.py或pyinstaller -p DIR1 -p DIR2 -p DIR3 myscripy.py

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 9月16日
  • 已采纳回答 9月8日
  • 创建了问题 9月8日

悬赏问题

  • ¥15 chaquopy python 安卓
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 有没有帮写代码做实验仿真的
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥30 vmware exsi重置后登不上
  • ¥15 易盾点选的cb参数怎么解啊
  • ¥15 MATLAB运行显示错误,如何解决?
  • ¥15 c++头文件不能识别CDialog
  • ¥15 Excel发现不可读取的内容
  • ¥15 关于#stm32#的问题:CANOpen的PDO同步传输问题