python程序打包成可执行文件【入门篇】

7 篇文章 5 订阅
订阅专栏
本文介绍了如何使用Python的PyInstaller模块将Python脚本打包成Windows下的exe可执行文件和Linux的可执行文件。在Windows环境下,详细阐述了创建虚拟环境、安装PyInstaller及打包过程。同样,对于Linux(Ubuntu)也给出了类似步骤。此外,文章还讲解了命令行参数处理的argparse和sys.argv的使用方法。
摘要由CSDN通过智能技术生成

python程序打包成可执行文件【入门篇】

提示:博主取舍了很多大佬的博文并亲测有效,分享笔记邀大家共同学习讨论


文章目录

  • python程序打包成可执行文件【入门篇】
  • 前言
  • 一、命令行运行Python脚本时传入参数
    • 1.argparse的用法
    • 2.sys.argv的用法
  • 二、Windows创建新环境打包exe文件
    • 1.新建虚拟环境
    • 2.打包成可执行文件
  • 三、Linux(Ubuntu)创建新环境打包可执行文件
    • 1.新建虚拟环境
    • 2.打包可执行文件
  • 总结


前言

Python程序的运行必须安装有Python环境,而用户的个人电脑上又不可能安装Python运行环境,因此就要将Python 程序打包为可执行文件,就可以直接运行该程序。PyInstaller是一个用于将Python脚本打包成独立可执行文件的工具。它的原理是将Python脚本及其依赖的库、资源文件等打包成一个单独的可执行文件,使得在其他机器上运行时不需要安装Python解释器和相关库,即可直接运行。


一、命令行运行Python脚本时传入参数

1.argparse的用法

argparse是Python内置的一个用于命令项选项与参数解析的模块,在程序中定义好需要的参数,通过sys.argv将参数解析出来,并自动生成帮助和使用信息。

示例1:采用argparse从命令行获取用户信息。

import argparse
# 模块使用主要分三部分:
#  - 创建ArgumentParser()对象 
#  - 调用add_argument()方法添加参数 
#  - 使用parse_args()解析添加的参数
def main():
    parser = argparse.ArgumentParser(description="example of argparse")
    parser.add_argument('-n', '--name', default=' Li ')
    parser.add_argument('-a', '--age', default='20')
    parser.add_argument('-g', '--gender', default='male')
    args = parser.parse_args()
    print(args)
    name = args.name
    age = args.age
    gender = args.gender
    print('name:{},age:{},gender:{}'.format(name, age,gender))
if __name__ == '__main__':
    main()

在这里插入图片描述

2.sys.argv的用法

sys.argv用于python文件运行时获取命令行参数,以list形式存储,其中sys.argv[0]表示代码本身文件路径。

# sys.argv从命令行获取py文件的绝对路径
import sys
file_path = sys.argv[0]
print(file_path)

示例2:采用sys.argv从命令行获取用户信息。

import sys
name = sys.argv[1]
age = sys.argv[2]
gender = sys.argv[3]
print(name)
print(age)
print(gender)

在这里插入图片描述
或者更为简洁:

import sys
print(sys.argv[1:])

二、Windows创建新环境打包exe文件

创建一个纯净的、没有多余的第三方库和模块的小型Python环境,尽可能的少的库和模块要来打包exe可执行文件。

1.新建虚拟环境

# name 环境名、3.x Python的版本
conda create -n name python==3.x
# 查看安装环境目录
conda env list

# 激活新环境,environment_name 环境名
activate environment_name
# package_name 所需其他包名
# -i https://pypi.tuna.tsinghua.edu.cn/simple 镜像源的地址
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple package_name
# 下载安装Pyinstaller模块
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple Pyinstaller

2.打包成可执行文件

我们以argparse的用法的示例1作为示例新建XXX.py。

# 切换命令行的路径,file_path 文件绝对路径
cd file_path
# 只生成一个单个文件(只有一个exe文件)
Pyinstaller -F XXX.py

在当前路径新生成三个文件(build 文件夹、dist 文件夹和 spec文件)。

exe文件在dist文件夹里面。打包完之后,spec文件和 build 文件夹就可以删除了。
在这里插入图片描述执行exe文件:
在这里插入图片描述

三、Linux(Ubuntu)创建新环境打包可执行文件

1.新建虚拟环境

与Windows流程大同小异

# name 环境名、3.x Python的版本
conda create -n name python==3.x
# 查看安装环境目录
conda env list

# 激活新环境,environment_name 环境名
source activate environment_name
# package_name 所需其他包名
# -i https://pypi.tuna.tsinghua.edu.cn/simple 镜像源的地址
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple package_name
# 下载安装Pyinstaller模块
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple Pyinstaller

2.打包可执行文件

我们以argparse的用法的示例1作为示例新建XXX.py。

# 切换命令行的路径,file_path 文件绝对路径
cd file_path
# 只生成一个单个文件(只有一个可执行文件)
pyinstaller -F XXX.py
# 注意linux(ubuntu)下pyinstaller是全小写,否则报command not found的错误

在当前路径新生成三个文件(build 文件夹、dist 文件夹和 spec文件)。

可执行文件在dist文件夹里面。打包完之后,spec文件和 build 文件夹就可以删除了。

执行可执行文件:

总结

与其他的打包模块相比,使用Python的Pyinstaller模块进行打包的使用者最多,用起来简便,因此本文以 Pyinstaller模块来打包Python程序为大家提供一个入门参考。

Python - 生可执行文件.exe(附操作完整流程)
小肥丸
03-26 1万+
欢迎纠正,(づ ̄3 ̄)づ╭❤~ღ( ´・ᴗ・` ) 比心。
6种打包Python代码的方法,让你的程序exe应用!
lojloj的博客
07-17 7万+
Python是一种高级编程语言,它具有易学易用、跨平台等优点,因此在开发中得到了广泛的应用。然而,Python代码需要在Python解释器中运行,这对于一些用户来说可能不太方便。因此,将Python代码打包可执行文件(exe)是一种很好的解决方案。本文将介绍6种将Python代码打包exe应用的方式。
Python打包linux可执行程序
zengliguang的专栏
06-26 2680
打包之前,请确保您的 Python 程序在 Linux 环境中能够正常运行,并且处理好了所有的依赖项。需要注意的是:程序运行的目的服务器是什么操作系统,什么版本;打包的电脑也得是一样的环境。文件夹,其中包含可执行文件以及相关的依赖文件。这将在当前目录下生一个。首先,确保您已经安装了。生可执行文件将位于。
Python脚本打包可执行文件
GAME-LAB(游戏开发,微信公众号:fury-programer)
08-24 2566
Python是一个脚本语言,被解释器解释执行。它的发布方式: .py文件:对于开源项目或者源码没那么重要的,直接提供源码,需要使用者自行安装Python并且安装依赖的各种库。(Python官方的各种安装包就是这样做的) .pyc文件:有些公司或个人因为机密或者各种原因,不愿意源码被运行者看到,可以使用pyc文件发布,pyc文件是Python解释器可以识别的二进制码,故发布后也是跨平台的,需要使用者安
python代码打包可执行文件(exe)
2301_76161259的博客
06-17 2万+
在介绍pyinstaller之前,先简单介绍下其它几个可以用于打包python代码的工具:cx_Freeze:可以将Python脚本转换为独立的可执行文件,支持多个平台。PyInstaller:可以将Python脚本(或模块)转换为单个可执行文件或目录,支持多个平台。PyOxidizer:功能类似于PyInstaller,但它可以生自包含的二进制文件,可以跨平台使用。Py2exe:仅适用于Windows平台,可以将Python脚本转换为.exe可执行文件
python工程打包可执行文件
wangmengmeng99的博客
07-27 2万+
python打包可执行的exe文件
一文带你搞定python脚本(.py)打包可执行文件(.exe)
H931053的博客
03-11 4000
当使用PyInstaller打包Python程序时,有时会遇到打包后无法找到自定义模块的情况。这通常是由于PyInstaller默认只会打包程序所依赖的标准库和第三方库,而对于自定义模块需要进行额外的配置。
python文件(.py)如何打包可执行文件(.exe)
编程小喵
07-13 6万+
python文件(.py)如何打包可执行文件(.exe)
chatgpt赋能pythonPython打包手机可执行文件指南
b45e1933f46的博客
06-14 1046
通常,Python代码只能在装有Python解释器的电脑上运行。然而,有时候我们需要在没有Python解释器的设备上执行Python程序,比如手机。这时候,我们就需要将Python代码打包手机可执行文件,使得它能够在手机上直接运行。本文由chatgpt生,文章没有在chatgpt生的基础上进行任何的修改。以上只是chatgpt能力的冰山一角。作为通用的Aigc大模型,只是展现它原本的实力。对于颠覆工作方式的ChatGPT,应该选择拥抱而不是抗拒,未来属于“会用”AI的人。
Python项目打包可执行文件(exe)发布_Pyinstaller
青衫依旧的博客
08-02 622
Python打包exe执行文件 大家都知道Python是脚本语言,每次运行的时候都需要Python环境,这样就造如果你想分享你的程序或者在其它电脑运行时就需要安装Python环境,这是件很麻烦的事,所以就在想有没有什么办法将Python脚本打包exe可执行文件,突然发现了一个打包库‘Pyinstaller’。下面我们就简单介绍下Pyinstaller它的安装以及使用吧。 安装Pyinstaller 安装方式 官网:http://www.pyinstaller.org/ pip install PyI
100天精通Python丨基础知识篇 —— 01、C站最全Python标准库总结
热门推荐
独木不成林,单弦不成音。
06-29 51万+
❤粉丝福利:免费下载海量【PPT模板、简历模板、学习资料】https://app.yinxiang.com/fx/13ce6bbd-f36f-4e92-be53-92dd381ed729
python-打包exe-pyinstaller+docker-解决文件过大以及各类打包失败问题
qq_48455792的博客
03-11 3012
python-打包exe-pyinstaller+docker-解决文件过大以及各类打包失败问题 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 例如:第一章 Python 机器学习入门之pandas的使用 提示:写完文章后,目录可以自动生,如何生可参考右边的帮助文档 文章目录python-打包exe-pyinstaller+docker-解决文件过大以及各类打包失败问题前言一、我要打包的代码二、前期准备1.py文件准备2.发现问题3.docker容器准备总结 前言 如果小伙伴们
关于为在手机上开发/运行Python程序的研究报告以及为手机打包Python应用的研究。
weixin_55439177的博客
01-17 1237
这就是人们目前为Python在手机端做的所有努力(也是作者在Internet上面挖掘的所有结果)。可以看到,Python在手机方面的内容都正处于早期阶段,有许多的大神先驱正在努力地帮我们开路。很多方案必须真的了解Android应用开发的全部/部分过程(或至少知道怎么使用相关的集环境/工具链即AndroidNDK等)。我非常希望更多的人加入到这个贫瘠的领域,把Python更多地带到手机上。
python-如何将Python 脚本打包可执行文件(exe)
最新发布
杨杨杨~~的博客
06-26 2464
如果您觉得有用的话,记得给,写作不易啊^ _ ^。而且听说,实在白嫖的话,那欢迎常来啊!!!
Python 文件打包可执行文件
pxklove1214的博客
02-20 2413
import random while True: #系统给出随机数字 sys_num = random.randint(1,10) print(sys_num) while True: print("猜数字游戏开始了!") user_num = int(input("请输入你猜的数字:")) if user_num>sys_num: print("大了") elif user_n
python打包
weixin_30274627的博客
01-13 264
<!DOCTYPE html> python打包 /* GitHub stylesheet for MarkdownPad (http://markdownpad.com) / / Author: Nicolas Hery - http://nicolashery.com / / Version: b13fe65ca28d2e568c6ed5d7f06581183df8f2ff...
如何把python文件打包为可执行程序exe?
Python单行客的博客
10-26 1万+
如何把python文件打包为可执行程序exe?
Python打包方法基本应用方式介绍
weixin_33730836的博客
08-20 102
Python编程语言是一款功能强大的免费开源的通用型计算机程序应用语言,对于经验丰富的开发人员来说,掌握这样一款语言在其程序开发中是一个比较重要的选择。我们今天就先来了解一下python打包方法的相关应用。Python查找重复文件相关操作方式分享四种Python文件主要功能介绍Python实例应用经典讲解Python ZipFile模块功能特点讲解Python set类型基本...
如何将Python代码打包可执行文件?
oldboyedu1的博客
02-02 2426
大家都知道,平时我们写的Python程序,其运行主要依赖于Python环境。当我们想要提供给别人使用或者更换电脑时,就需要重新安装Python环境,十分麻烦,因此我们想要将它传给任何人使用就需要将Python代码打包可执行文件,那么如何将Python代码打包可执行文件?②这种方式是加上-F参数后把制作出的.exe打包一个独立的.exe格式的可执行文件,称为onefile方式。①是把由.py文件打包的.exe文件及相关文件放在一个目录中。这种方式是默认方式,称为onedir方式。
windows上能打包linux执行python程序
06-10
是可以的。你可以使用 PyInstaller 工具在 Windows 上将 Python 代码打包为可在 Linux 上执行的二进制文件。但是需要注意的是,由于 Windows 和 Linux 系统的差异,可能会出现一些兼容性问题。因此,在打包之前,最好先在 Linux 系统上测试你的代码是否能够正常运行。
写文章

热门文章

  • ORB-SLAM2详细安装教程(ubuntu18.04) 10556
  • 【深度学习】ONNX模型快速部署 9969
  • 【三维重建】【深度学习】【数据集】基于COLMAP制作自己的NeRF(LLFF格式)数据集 8272
  • 【深度学习】windows10环境配置详细教程 7341
  • 【深度学习】【三维重建】windows11环境配置tiny-cuda-nn详细教程 7204

分类专栏

  • onnxruntime 6篇
  • onnx 15篇
  • 深度学习 79篇
  • python程序打包 7篇
  • 深度学习框架格式转化 2篇
  • opencv 5篇
  • 光流估计 1篇
  • 图像分割 11篇
  • c/c++学习 1篇
  • 三维重建 23篇
  • 点云配准 3篇
  • SLAM 2篇
  • ubuntu 8篇
  • docker 10篇
  • cmake 2篇
  • 图像分类 17篇
  • 轻量级网络 6篇
  • 模型剪枝 1篇
  • 图像抠图 1篇
  • TensorFlow1.X 5篇
  • Jetson 1篇
  • 数据集 2篇
  • ImageMagick 1篇
  • annocoda 2篇
  • 三维视觉 4篇
  • 视频分割 7篇
  • 图像质量评估 1篇
  • PyTorch 1篇
  • pcd点云 1篇
  • OpenMVS 1篇
  • wegt 1篇
  • 常见问题

最新评论

  • 【docker】Windows10系统下安装并配置阿里云镜像加速

    白小枫: 安装在d盘启动不了:Docker Engine stopped

  • 【6D位姿估计】【深度学习】windows10下Gen6D代码Pytorch实现

    Joseph616616: 你好,我也遇到了同样的问题,请问你解决了吗

  • 【三维重建】【深度学习】windows10下instant-nsr-pl官方代码Pytorch实现

    NGxs: 有遇到这个报错吗?ImportError: DLL load failed while importing nerfacc_cuda: 找不到指定的模块。

  • 【光流估计】【深度学习】Windows11下FastFlowNet代码Pytorch官方实现与源码讲解

    CSDN-Ada助手: Python入门 技能树或许可以帮到你:https://edu.csdn.net/skill/python?utm_source=AI_act_python

  • 【opencv】【GPU】windows10下opencv4.8.0-cuda C++版本源码编译教程

    空林长风: 解决了,一步一步来,最好用vs2019

大家在看

  • chapter 1_basic conceptions 501
  • Linux:进程状态和优先级 2389
  • 模板:JDBC 连接数据库并实现 CRUD 288
  • 【精品毕设推荐】基于SSM+jsp的学生公寓管理中心系统设计与实现 753
  • 计算机视觉:VGGNet网络详解

最新文章

  • 【深度学习】【图像分类】【OnnxRuntime】【Python】ResNet模型部署
  • 【深度学习】【图像分类】【OnnxRuntime】【Python】VggNet模型部署
  • 【深度学习】【OnnxRuntime】【Python】模型转化、环境搭建以及模型部署的详细教程
2024年23篇
2023年108篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值

玻璃钢生产厂家兰亭园林玻璃钢雕塑的制作手法广场玻璃钢雕塑哪家实力强曲靖玻璃钢花盆厂家温州商场美陈销售花都玻璃钢雕塑焦作景观玻璃钢卡通雕塑定做西安玻璃钢雕塑定做价格湖北卡通造型玻璃钢雕塑厂家玻璃钢红色题材雕塑哪里有玻璃钢雕塑的保存芜湖步行街玻璃钢雕塑销售电话附近不锈钢玻璃钢卡通雕塑定做宣城景观玻璃钢雕塑玻璃钢海洋雕塑制作邹平玻璃钢花盆花器四川中庭商场美陈销售厂家玻璃钢花盆绘画文案气球商场美陈热线电话玻璃钢牛郎织女雕塑圣诞玻璃钢雕塑公司方案常用玻璃钢花盆价钱浙江玻璃钢雕塑定制荆门人物玻璃钢雕塑公司商业广场玻璃钢卡通雕塑报价黑龙江公园玻璃钢雕塑定做价格义乌玻璃钢园林雕塑云南玻璃钢雕塑制作工艺重庆景区玻璃钢雕塑销售厂家昆明火烈鸟玻璃钢雕塑定制新余欧式玻璃钢雕塑香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化