欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

python编译pyc工程--导包问题解决

程序员文章站 2022-05-25 20:07:09
利用python 编译工程,生产pyc文件 pyc文件好处:是一种二进制机器码,并且隐藏了源文件代码,但是有和py文件一样的功能(可以理解为效果一样) 所以可以将代码隐藏,便于商业价值,保护代码隐私还能和py文件一样可运行 所以在一些情况下,需将源文件工程批量生成pyc文件来隐藏代码。 上面代码即为 ......

利用python 编译工程,生产pyc文件

pyc文件好处:是一种二进制机器码,并且隐藏了源文件代码,但是有和py文件一样的功能(可以理解为效果一样)

                        所以可以将代码隐藏,便于商业价值,保护代码隐私还能和py文件一样可运行

import compileall
compileall.compile_dir(r'/path')

所以在一些情况下,需将源文件工程批量生成pyc文件来隐藏代码。

上面代码即为 批量生成pyc的脚本更改path路径为根目录即可(根目录为最顶层目录需包括所有用到的文件)

运行完毕 会在不同目录生成__pycache__目录 存放所有当前目录的pyc文件

 

--------------------------------------------------------------------------------------------------------------------

这并没有结束

运行主函数pyc文件 会发现新错误 

importerror: no module named 'tracker.yolo'

python编译pyc工程--导包问题解决

原因是找不到文件tracker/yolo

 

解决方法

1.首先将所有__pycache__目录里的pyc文件全部粘贴到当前目录中 

2.将所有pyc文件后缀改为与目录中py文件相同名字  比如:yolo.cpython-35.pyc--》yolo.pyc 

3.将所有py文件删除

 

然后再运行你的主程序,解决问题