如何打包你的 Python 代码
2023-03-14 22:31:32 时间
安装安装工具
安装和更新最简单的方法setuptools
是pip
:
$ sudo python -m pip install --upgrade setuptools
示例库
创建一个简单的 Python 库,调用myhellolib
一些需要打包的示例代码。该库接受一个字符串,然后以大写字母打印该字符串。
两行代码,但是项目结构很重要,所以先创建目录树:
$ mkdir -p myhellolib.git/myhellolib
要确认此项目是可导入库(Python“模块”),请__init__.py
在代码目录中创建空文件以及包含代码的文件:
$ touch myhellolib.git / myhellolib / __init__.py
$ touch myhellolib.git / myhellolib / myhellolib.py
在myhellolib.py
文件中,输入这个简单的 Python 代码:
DEF招待员(小号):
打印(:S上())
图书馆是这样写的。
测试一下
在打包之前,请测试您的库。创建一个myhellolib.git/test.py
文件并输入以下代码:
导入myhellolib。myhellolib 作为你好
你好。问候语(“你好 Opensource.com。” )
运行脚本:
$ cd myhellolib.git
$ python 。/ test.py
你好 OPENSOURCE.COM
它有效,所以现在您可以将其打包。
设置工具
要使用 打包项目setuptools
,您必须创建一个.toml
标识setuptools
为构建系统的文件。将此文本放在myhellolib.toml
项目目录中名为的文件中:
[build-system]
requires = ["setuptools", "wheel"]
build-backend = "setuptools.build_meta"
接下来,创建一个名为 的文件setup.py
,其中包含有关您项目的元数据:
from setuptools import setup
setup (
name = 'myhellolib' ,
version = '0.0.1' ,
packages = [ 'myhellolib' ] ,
install_requires = [
'requests' ,
'importlib; python_version == "3.8"' ,
] ,
)
信不信由你,这就是设置setuptools
所需的全部内容。您的项目已准备好打包。
打包 Python
要创建 Python 包,您需要一个构建器。一个常用工具是build
,您可以使用它安装pip
:
$ python -m pip install build --user
构建你的项目:
$ python -m build
片刻之后,构建完成,项目文件夹中有一个名为dist
. 该文件夹包含一个.tar.gz
和一个.whl
文件。
你的第一个 Python 包!以下是每一个包含的内容:
$ tar --list --file dist / myhellolib-0.0.1.tar.gz
myhellolib-0.0.1 /
myhellolib-0.0.1 / PKG-INFO
myhellolib-0.0.1 / myhellolib /
myhellolib-0.0.1 / myhellolib / __init__.py
myhellolib-0.0.1 / myhellolib / myhellolib.py
myhellolib-0.0.1 / myhellolib.egg-info /
myhellolib-0.0.1 / myhellolib.egg-info / PKG-INFO
myhellolib-0.0.1 / myhellolib.egg -info / SOURCES.txt
myhellolib-0.0.1 / myhellolib.egg-INFO / dependency_links.txt
myhellolib-0.0.1 / myhellolib.egg-INFO / requires.txt
myhellolib-0.0.1 / myhellolib.egg-INFO / top_level.txt
myhellolib-0.0.1 / setup.cfg
myhellolib-0.0.1 / setup.py
$ unzip -l dist / myhellolib-0.0.1-py3-none-any.whl
存档:dist / myhellolib-0.0.1-py3-none-any.whl
名称
----
myhellolib / __init__.py
myhellolib /myhellolib.py
myhellolib-0.0.1.dist-info / METADATA
myhellolib-0.0.1.dist-info / WHEEL
myhellolib-0.0.1.dist-info / top_level.txt
myhellolib-0.0.1.dist-info / RECORD
- ------
6 个文件
相关文章
- 图像处理工具Python扩展库,你了解吗?
- 十个常用的损失函数解释以及Python代码实现
- 30 个数据科学工作中必备的 Python 包
- 如何在 Windows 上安装 Python
- 几行 Python 代码就可以提取数百个时间序列特征
- 使用Python快速搭建接口自动化测试脚本实战总结
- 哪种编程语言最适合开发网页抓取工具?
- 不要在 Python 中使用循环,这些方法其实更棒!
- 震惊!用Python探索《红楼梦》的人物关系!
- 如何最简单、通俗地理解Python模块?
- 酷炫,Python实现交通数据可视化!
- 为什么急于寻找Python的替代者?
- 30 个数据工程必备的Python 包
- 去字节面试被面这题能答上来吗?谈谈你对时间轮的理解?
- 火山引擎在行为分析场景下的 ClickHouse JOIN 优化
- 用Python爬取了某宝1166家月饼数据进行可视化分析,终于找到最好吃的月饼~
- 在 Linux 上试试这个基于 Python 的文件管理器
- Python列表解析式到底该怎么用?
- 如何快速把你的 Python 代码变为 API
- 十个Python初学者常犯的错误