zoukankan      html  css  js  c++  java
  • pyinstaller 打包生成exe之后运行提示‘no module name 'xxx'’错误

    python 3.7

    pyinstaller 3.4

    具体情况:

    pycharm中点击运行可成功执行,生成正确结果,没有报错。

    双击run.py(程序运行的主文件),运行,可生成正确结果,没有报错。

    pyinstaller打包生成exe后,双击exe文件,报错。

    解决尝试:

    get_log_inf.py 为自定义模块文件,与run.py放在同级文件夹下,理论上调用是没有问题的

    在pycharm中也可以在run中正常跳转到get_log_inf文件,说明可以正常寻到get_log_inf文件,问题应该不是出在调用上

    在get_log_inf.py中添加if __name__ == '__main__':并单独运行此py文件,发现报错,出现一个文件编码错误,(没有留图,大概意思就是UTF-8无法解码某个字符),在文件头添加# -*- encoding: gb2312 -*-,再次运行,无错误通过

    再次打包exe,双击exe,正常运行生成正确结果,无错误。

    问题解决!

    总结:

    可能是因为调用的缘故,编码错误这个问题被忽略掉了,在打包成exe之后,触发这个隐藏错误。

    建议出现‘no module name 'xxx'’错误,先单独运行无法调用的py文件,检查是否有错。有错会出现调用失败。

    咋子

  • 相关阅读:
    PathInfo模式,thinkPHP模板与控制之间的关系
    thinkPHP无法显示验证码问题
    jQuery.validate 中文API手册
    MySQL 常用函数
    MySQL插入、更新与删除数据 习题
    MySQL查询语句练习题
    在windows下SphinxCoreseek的配置安装与测试
    Ubuntu上Coreseek+PHP的安装
    Ubuntu下安装CoreSeek
    Ubuntu更新命令
  • 原文地址:https://www.cnblogs.com/congyinew/p/9981854.html
Copyright © 2011-2022 走看看