在PYPI上分发Python包装
要在PYPI上放置Python软件包,请按照以下步骤:首先使用SRC/文件夹,Setup.py或Pyproject.toml,Readme.md和许可证来组织您的项目结构;接下来,使用pyproject.toml为现代设置创建适当的元数据;然后使用构建和麻线工具构建和上传软件包。首先,正确构建项目以避免以后避免导入问题,以确保存在所有必要的文件。将pyproject.toml用于元数据,确保指定独特的名称,正确的版本,作者详细信息,描述,许可证和分类器。准备代码和元数据后,安装构建和麻线,运行Python -M构建以生成分发文件,首先使用Python -M -M Twine Upload -Repository -url https://test.pypi.org/legacy/legacy/legacy/ distroad测试testpypi上载,并最终与Pypi -pypi -pytolof -pytolof -twince -mm -m。请记住,一旦上传版本,就无法重复使用,因此请仔细管理版本号,尤其是在早期发行期间。
将您的Python软件包放在PYPI上不是魔术,但确实需要一些仔细的步骤。核心想法是正确准备您的代码,创建正确的文件并使用标准工具上传。到达那里后,人们可以像其他任何包装一样使用PIP安装它。

设置您的项目结构
甚至在考虑上传到PYPI之前,请确保您的项目正确组织。干净的结构使一切变得更加容易 - 对于您和以后可能安装包装的用户。
至少,您应该有:

- 一个包含您实际Python代码的
src/
文件夹(或类似) -
setup.py
或pyproject.toml
文件(在下一部分中详细介绍) - 用于文档的
README.md
-
LICENSE
文件
您不必遵循此布局,但这是标准的,有助于避免混乱。一个常见的错误是将所有内容都放在没有源文件夹的情况下 - 起初有效,但以后可能会导致进口问题。
创建正确的元数据
元数据告诉PYPI您的软件包是什么,它是什么版本以及如何处理文件。您可以使用setup.py
(classic)或pyproject.toml
(现代)。

如果您开始新鲜,请使用pyproject.toml
。它更简单和防止。这是一个基本示例:
[构建系统] 需要= [“ setuptools> = 61.0”] build-backend =“ setuptools.build_meta” [项目] name =“ your-pakeage-name” 版本=“ 0.1.0” 作者= [ {name =“您的名字”,email =“ you@example.com”} 这是给出的 描述=“包裹的简短描述” readme =“ readme.md” 许可= {file =“许可”} 需要python =“> = 3.7” 分类器= [ “编程语言:: python :: 3”, “许可证:: OSI批准:: MIT许可”, “操作系统:: OS独立”, 这是给出的
确保名称是独一无二的,并遵循命名规则( lowercase-with-dashes
,而不是CamelCase
)。另外,仔细检查您的版本编号是有道理的 - 管理更新时,您将稍后感谢自己。
建造和上传您的包裹
一旦您的代码和元数据准备就绪,就该建立和上传了。您需要的两个工具: build
和twine
。
将它们安装一次:
PIP安装构建麻线
然后,从您的项目root运行:
Python -M构建
这将在新的dist/
文件夹中创建两个文件: .tar.gz
源存档和.whl
Wheel文件。
现在用TestPypi首先测试上传(良好实践):
Python -M Twine上传-Repository-URL https://test.pypi.org/legacy/ dist/*
如果有效,请执行真正的操作:
Python -M Twine上传dist/*
它会要求您的PYPI用户名和密码(或API令牌)。完毕!
人们经常忘记的一件事:如果您弄乱了上传,则无法重复使用相同的版本号。因此,如果您仍在快速迭代,请仔细选择您的版本 - 使用0.0.1
0.0.2a
。
基本上就是这样。一旦完成一次,还不错。只需记住要在推出新版本之前保持元数据更新并进行测试。
以上是在PYPI上分发Python包装的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undress AI Tool
免费脱衣服图片

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

要入门量子机器学习(QML),首选工具是Python,需安装PennyLane、Qiskit、TensorFlowQuantum或PyTorchQuantum等库;接着通过运行示例熟悉流程,如使用PennyLane构建量子神经网络;然后按照数据集准备、数据编码、构建参数化量子线路、经典优化器训练等步骤实现模型;实战中应避免一开始就追求复杂模型,关注硬件限制,采用混合模型结构,并持续参考最新文献和官方文档以跟进发展。

本文为您精选了多个顶级的Python“成品”项目网站与高水平“大片”级学习资源入口。无论您是想寻找开发灵感、观摩学习大师级的源代码,还是系统性地提升实战能力,这些平台都是不容错过的宝库,能帮助您快速成长为Python高手。

使用subprocess.run()可安全执行shell命令并捕获输出,推荐以列表传参避免注入风险;2.需要shell特性时可设shell=True,但需警惕命令注入;3.使用subprocess.Popen可实现实时输出处理;4.设置check=True可在命令失败时抛出异常;5.简单场景可直接链式调用获取输出;日常应优先使用subprocess.run(),避免使用os.system()或已弃用模块,以上方法覆盖了Python中执行shell命令的核心用法。

使用Seaborn的jointplot可快速可视化两个变量间的关系及各自分布;2.基础散点图通过sns.jointplot(data=tips,x="total_bill",y="tip",kind="scatter")实现,中心为散点图,上下和右侧显示直方图;3.添加回归线和密度信息可用kind="reg",并结合marginal_kws设置边缘图样式;4.数据量大时推荐kind="hex",用

掌握Python网络爬虫需抓住三个核心步骤:1.使用requests发起请求,通过get方法获取网页内容,注意设置headers、处理异常及遵守robots.txt;2.利用BeautifulSoup或XPath提取数据,前者适合简单解析,后者更灵活适用于复杂结构;3.针对动态加载内容使用Selenium模拟浏览器操作,虽速度较慢但能应对复杂页面,也可尝试寻找网站API接口提高效率。

字符串列表可用join()方法合并,如''.join(words)得到"HelloworldfromPython";2.数字列表需先用map(str,numbers)或[str(x)forxinnumbers]转为字符串后才能join;3.任意类型列表可直接用str()转换为带括号和引号的字符串,适用于调试;4.自定义格式可用生成器表达式结合join()实现,如'|'.join(f"[{item}]"foriteminitems)输出"[a]|[

使用httpx.AsyncClient可高效发起异步HTTP请求,1.基本GET请求通过asyncwith管理客户端并用awaitclient.get发起非阻塞请求;2.并发多个请求时结合asyncio.gather可显着提升性能,总耗时等于最慢请求;3.支持自定义headers、认证、base_url和超时设置;4.可发送POST请求并携带JSON数据;5.注意避免混用同步异步代码,代理支持需注意后端兼容性,适合用于爬虫或API聚合等场景。

安装pyodbc:使用pipinstallpyodbc命令安装库;2.连接SQLServer:通过pyodbc.connect()方法,使用包含DRIVER、SERVER、DATABASE、UID/PWD或Trusted_Connection的连接字符串,分别支持SQL身份验证或Windows身份验证;3.查看已安装驱动:运行pyodbc.drivers()并筛选含'SQLServer'的驱动名,确保使用如'ODBCDriver17forSQLServer'等正确驱动名称;4.连接字符串关键参数
