使用pyinstaller可以把.py文件打包为.exe可执行文件,命令为:
pyinstaller
打包后有两个文件夹,一个是dist,另外一个是build,可执行文件在dist文件夹里面,但是会有许多依赖是独立文件存在
pyinstaller -F
使用-F参数后,打包的可执行文件是一个整体,只有一个.exe文件。
获取文件路径的方式有四种,可以在打包成exe文件后,获取.exe文件的当前路径
-
import sys
-
import os
-
print([0])
-
print([0])
-
print((()))
-
print((([0])))
在ide界面的执行结果如下图:
在exe文件的执行结果为:
#########################################################################
python找包的路径(找不到自定义包的问题解决)
问题:工程下自定义的包,python在执行时经常找不到包
python找包的路径:python安装路径下的lib包和PYTHONPATH下的包
可以使用[]打印出python找包的路径
-
import sys
-
syspath=
但是在jenkins运行时经常提示找不到包,所以就需要手动添加PYTHONPATH,通过追加列表来实现
例如下面的方式:
mport os
import sys
rootpath=str("工程所在目录")
syspath=
=[]
(rootpath)#将工程根目录加入到python搜索路径中
([rootpath+i for i in (rootpath) if i[0]!="."])#将工程目录下的一级目录添加到python搜索路径中
(syspath)
-
import os
-
import sys
-
rootpath=str("工程所在目录")
-
syspath=
-
=[]
-
(rootpath)#将工程根目录加入到python搜索路径中
-
([rootpath+i for i in (rootpath) if i[0]!="."])#将工程目录下的一级目录添加到python搜索路径中
-
(syspath)
说明:因为我是用pycharm建的一个工程,我遇到的问题也是找不到工程下的目录,所以就添加了工程目录以及他下面的一级目录
我之所以先用=[]把他清空,然后将默认的路径追加进来,是因为我工程内有一个包可能与其他路径的重叠了,如果放到后面会报错。所以我就把路径放到前面