【Python】 —— pyinstaller 打包多个 py 文件为一个 exe

核心语句:

pyinstaller -F main.py -p py_dir

详细描述:

test 目录下有三个 py 文件,分别为 cmmd.py、hello.py、test2/word.py,

依赖关系如下(A>B 表示 A 依赖于 B,或者说 A 中从 Bimport 一些内容)

cmmd.py > hello.py > word.py

  

三个文件内容分别为:

# cmmd.py
# -*- coding: utf-8 -*-

from time import sleep

from hello import show


def main():
    count = 1

    while count <= 5:
        show(count)
        sleep(1)
        count += 1
    print("Bye!")
    

if __name__ == "__main__":
    main()
# hello.py
# -*- coding: utf-8 -*-

from test2.word import what


def show(nbr):
    res = "[ No.{} | Test: {}.]".format(nbr, what())
    print(res)
# word.py
# -*- coding: utf-8 -*-


def what():
    return "Hello, Python"

通过依赖关系可以知道,cmmd.py 是主程序,即入口,

所以,在test目录下运行打包命令:

# -F 打包成一个 exe
# -p 相关的文件的路径,即所需的其他文件所在目录,
# 可以用路径分隔符指定多个路径,windows用分号';',linux用冒号':'
# 这里是在test目录下运行的命令,所以 -p 后边跟的是 相对路径 test2
# -p 前边写的是主入口程序的路径,这里写的相对路径 cmmd.py
pyinstaller -F cmmd.py -p test2

打包的过程的关键信息

PYTHONPATH

可见,之前添加的 -p test2,被添加到了PYTHONPATH 中。

打包后的 exe 运行结果

run exe

The end.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值