python-pyinstaller、打包后获取路径

时间:2024-10-22 22:18:32

使用pyinstaller可以把.py文件打包为.exe可执行文件,命令为:

pyinstaller

打包后有两个文件夹,一个是dist,另外一个是build,可执行文件在dist文件夹里面,但是会有许多依赖是独立文件存在

pyinstaller -F

使用-F参数后,打包的可执行文件是一个整体,只有一个.exe文件。

获取文件路径的方式有四种,可以在打包成exe文件后,获取.exe文件的当前路径

  1. import sys

  2. import os

  3. print([0])

  4. print([0])

  5. print((()))

  6. print((([0])))

在ide界面的执行结果如下图:

在exe文件的执行结果为:

 

#########################################################################

python找包的路径(找不到自定义包的问题解决)

问题:工程下自定义的包,python在执行时经常找不到包

python找包的路径:python安装路径下的lib包和PYTHONPATH下的包

可以使用[]打印出python找包的路径

  1. import sys
  2. syspath=

但是在jenkins运行时经常提示找不到包,所以就需要手动添加PYTHONPATH,通过追加列表来实现

例如下面的方式:

mport os
import sys
rootpath=str("工程所在目录")
syspath=
=[]
(rootpath)#将工程根目录加入到python搜索路径中
([rootpath+i for i in (rootpath) if i[0]!="."])#将工程目录下的一级目录添加到python搜索路径中

(syspath)

  1. import os
  2. import sys
  3. rootpath=str("工程所在目录")
  4. syspath=
  5. =[]
  6. (rootpath)#将工程根目录加入到python搜索路径中
  7. ([rootpath+i for i in (rootpath) if i[0]!="."])#将工程目录下的一级目录添加到python搜索路径中
  8. (syspath)

说明:因为我是用pycharm建的一个工程,我遇到的问题也是找不到工程下的目录,所以就添加了工程目录以及他下面的一级目录

我之所以先用=[]把他清空,然后将默认的路径追加进来,是因为我工程内有一个包可能与其他路径的重叠了,如果放到后面会报错。所以我就把路径放到前面