当前位置: 首页 > news >正文

动漫制作专业认知宁波seo资源

动漫制作专业认知,宁波seo资源,推广链接软件,页面模板 公众号打包Python项目 本教程将指导您如何打包一个简单的Python项目。它将 向您展示如何添加必要的文件和结构来创建包#xff0c;如何 构建包#xff0c;以及如何将其上传到Python包索引#xff08;PyPI#xff09;。 尖端 如果您在运行本教程中的命令时遇到问题#xff0c;请…打包Python项目 本教程将指导您如何打包一个简单的Python项目。它将 向您展示如何添加必要的文件和结构来创建包如何 构建包以及如何将其上传到Python包索引PyPI。 尖端 如果您在运行本教程中的命令时遇到问题请复制命令 及其输出然后在packaging-problems存储库上打开一个issue GitHub.我们会尽力帮助你 有些命令需要较新版本的pip因此 确保您安装了最新版本 Unix/macOS Windows py -m pip install --upgrade pip一个简单的项目 本教程使用一个名为 example_package_YOUR_USERNAME_HERE.如果您的用户名是me则 包将是example_package_me;这确保您有一个唯一的 与其他人上传的软件包不冲突的软件包名称 遵循本教程。我们建议按照本教程的原样使用此 在打包你自己的项目之前。 在本地创建以下文件结构 packaging_tutorial/ └── src/└── example_package_YOUR_USERNAME_HERE/├── __init__.py└── example.py包含Python文件的目录应该与项目名称匹配。这 简化了配置并且对于安装软件包的用户来说更加明显。 __init__.py建议将目录作为常规包导入 即使像我们在本教程中的情况那样该文件是空的[1]。 example.py是包中的一个模块的示例 包含逻辑函数、类、常量等你的包裹。 打开该文件并输入以下内容 def add_one(number):return number 1如果你不熟悉Python 导入软件包请花几分钟时间阅读 Python包和模块的文档。 创建此结构后您需要运行此 packaging_tutorial目录中的教程。 创建包文件 现在将添加用于准备项目以进行分发的文件。 完成后项目结构将如下所示 packaging_tutorial/ ├── LICENSE ├── pyproject.toml ├── README.md ├── src/ │ └── example_package_YOUR_USERNAME_HERE/ │ ├── __init__.py │ └── example.py └── tests/创建测试目录 tests/是测试文件的占位符。先把它空着。 选择构建后端 像pip和build这样的工具实际上并不转换你的源代码 进入一个分发包像一个轮子; 该作业由构建后端执行。构建后端确定如何 您的项目将指定其配置包括元数据信息 例如PyPI上显示的名称和标记 和输入文件。构建后端具有不同级别的功能例如 是否支持构建扩展模块以及 你应该选择一个适合你的需要和喜好。 您可以从许多后端中进行选择;本教程默认使用Hatchling但它与Setuptools的工作方式相同 Flit、PDM和其他支持[project] 元数据表。 注意 一些构建后端是提供命令行的大型工具的一部分 具有项目初始化和版本等附加功能的接口 管理以及构建上传和安装软件包。这 教程使用独立工作的单一用途工具。 pyproject.toml告诉构建前端工具如pip和 构建用于项目的后端。下面是一些 常见构建后端的示例但请检查后端自己的文档 的双曲余切值。 hatchling [build-system] requires [hatchling] build-backend hatchling.buildsetuptools 微片 PDM requires键是构建包所需的包列表。 前端应该在构建包时自动安装它们。 前端通常在隔离的环境中运行构建因此忽略依赖项 可能会导致构建时错误。 这应该总是包括你的后端的包并可能有其他的构建时间 个依赖项 build-backend键是前端将使用的Python对象的名称 来执行构建。 这两个值都将由构建的文档提供 后端或由其命令行界面生成。应该没有必要 您可以自定义这些设置。 构建工具的其他配置将在tool部分中 或者在构建工具定义的特殊文件中。为 例如当使用pyproject.toml作为构建后端时 可以添加到setuptools或setup.py文件中并指定 setup.cfg在你的构建中允许工具定位和使用这些 的自动 配置元数据 打开pyproject.toml输入以下内容。更改name 以包含您的用户名;这可确保您拥有唯一的 与其他人上传的软件包不冲突的软件包名称 遵循本教程。 [project] name example_package_YOUR_USERNAME_HERE version 0.0.1 authors [{ nameExample Author, emailauthorexample.com }, ] description A small example package readme README.md requires-python 3.8 classifiers [Programming Language :: Python :: 3,License :: OSI Approved :: MIT License,Operating System :: OS Independent, ][project.urls] Homepage https://github.com/pypa/sampleproject Issues https://github.com/pypa/sampleproject/issuesname是您的软件包的分发名称。它可以是任何名称 只要它只包含字母、数字、.、_和-。它还 不能在PyPI上使用。请务必更新此与您的 本教程的用户名因为这可以确保您不会尝试上传 与已存在的包同名的包。 version是包的版本号。(Some构建后端允许它成为 以其他方式指定例如从文件或Git标签。 authors用于标识包的作者;您指定一个名称 每个作者的电子邮件。您也可以在同一个列表中列出maintainers 格式. description是一个简短的一句话的总结包。 readme是一个文件的路径该文件包含 包.这显示在PyPI上的包详细信息页面上。 在这种情况下描述从README.md加载这是一个 共同模式。中还描述了一种更高级的表格形式 pyproject.toml guide. requires-python给出了您的 项目像pip这样的安装程序将通过旧版本的 包直到找到一个具有匹配Python版本的包。 classifiers给出索引和pip一些额外的元数据 关于你的包裹在这种情况下该包仅与Python兼容 3根据MIT许可证授权并且独立于操作系统。你应该 总是至少包括你的包工作在哪个版本的Python上 您的软件包在哪个许可证下可用以及哪些操作系统 有关分类器的完整列表请参见 https//pypi.org/classifiers/. urls允许您列出任何数量的额外链接以在PyPI上显示。 一般来说这可能是源代码文档问题跟踪器等。 有关详细信息请参阅pyproject.toml指南 在这些和其他领域可以定义在[project] 表.其他常用字段为keywords以提高可扩展性  创建README.md 打开README.md输入以下内容。您可以自定义此 如果你愿意的话 # Example PackageThis is a simple example package. You can use [GitHub-flavored Markdown](https://guides.github.com/features/mastering-markdown/) to write your content.创建许可证 上传到Python包索引的每个包都必须包含 一张执照。这会告诉安装您的软件包的用户 可以使用你的包裹。有关选择许可证的帮助请参见 https//sealicense.com/.选择许可证后打开 LICENSE并输入许可证文本。例如如果您选择了 MIT许可证 Copyright (c) 2018 The Python Packaging AuthorityPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the Software), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.THE SOFTWARE IS PROVIDED AS IS, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.大多数构建后端会自动在包中包含许可证文件。看到你 backend的文档了解更多详情。 包括其他文件 上面列出的文件将自动包含在您的 源分布如果你想 包括其他文件请参阅构建后端的文档。 正在生成分发存档 下一步是生成分发包 为了包裹这些是上传到Python的存档 软件包索引可以通过pip安装。 确保你安装了最新版本的PyPA py -m pip install --upgrade build尖端 如果在安装这些组件时遇到问题请参阅 安装软件包教程。 现在从pyproject.toml所在的同一目录运行此命令 py -m build此命令应输出大量的文本一旦完成应生成两个 dist目录中的文件 dist/ ├── example_package_YOUR_USERNAME_HERE-0.0.1-py3-none-any.whl └── example_package_YOUR_USERNAME_HERE-0.0.1.tar.gztar.gz文件是一个源代码发行版 而.whl文件是一个构建的发行版。 较新的pip版本优先安装已构建的发行版但 如果需要的话回退到源代码分发。你应该总是上传一个源 发行版并为您的项目所在的平台提供构建的发行版。 兼容。在这种情况下我们的示例包与Python兼容 任何平台因此只需要一个构建的发行版。 分发档案 最后是时候把你的包上传到Python包索引了 你需要做的第一件事是在TestPyPI上注册一个帐户 是用于测试的包装索引的单独实例 实验这对于像本教程这样的东西来说是很好的 一定要上传到真实的索引。要注册帐户请转到 https//test.pypi.org/account/register/并完成该页面上的步骤。 您还需要验证您的电子邮件地址然后才能上传 任何包裹。 有关更多详细信息请参阅使用TestPyPI。 要安全地上传项目您创建一个在 https//test.pypi.org/manage/account/#api-tokens将“范围”设置为“整个 账户”。在复制并保存令牌之前请不要关闭页面-您 再也见不到那个信物了 现在您已注册您可以使用GoogleChrome上载 分销包。你需要安装Twine py -m pip install --upgrade twine安装完成后运行Twine上传dist下的所有归档文件 py -m twine upload --repository testpypi dist/*请输入用户名和密码对于用户名 使用__token__。对于密码使用令牌值包括 pypi-前缀。 命令完成后您应该看到类似于以下内容的输出 Uploading distributions to https://test.pypi.org/legacy/ Enter your username: __token__ Uploading example_package_YOUR_USERNAME_HERE-0.0.1-py3-none-any.whl 100% ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 8.2/8.2 kB • 00:01 • ? Uploading example_package_YOUR_USERNAME_HERE-0.0.1.tar.gz 100% ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 6.8/6.8 kB • 00:00 • ?上传后您的包应该可以在TestPyPI上查看;例如 https://test.pypi.org/project/example_package_YOUR_USERNAME_HERE. 安装新上传的软件包 您可以使用pip安装您的软件包并验证它是否工作。 创建虚拟环境 然后从TestPyPI安装你的包 py -m pip install --index-url https://test.pypi.org/simple/ --no-deps example-package-YOUR-USERNAME-HERE请确保在软件包名称中指定您的用户名 pip应该安装来自TestPyPI的包输出应该是 就像这样 Collecting example-package-YOUR-USERNAME-HEREDownloading https://test-files.pythonhosted.org/packages/.../example_package_YOUR_USERNAME_HERE_0.0.1-py3-none-any.whl Installing collected packages: example_package_YOUR_USERNAME_HERE Successfully installed example_package_YOUR_USERNAME_HERE-0.0.1注意 本例使用--index-url标志指定TestPyPI而不是 Live PyPI。此外它还指定了--no-deps。由于TestPyPI不 有与PyPI相同的包尝试 安装依赖项可能会失败或安装一些意外的东西。虽然我们的 示例包没有任何依赖项这是一个很好的做法以避免 使用TestPyPI时安装依赖项。 您可以通过导入软件包来测试它是否正确安装。 确保你仍然在虚拟环境中然后运行Python py然后导入包 from example_package_YOUR_USERNAME_HERE import exampleexample.add_one(2) 3后续步骤 恭喜你你已经打包并发布了一个Python项目 ✨ ✨ 请记住本教程向您展示了如何将包上传到Test PyPI它不是永久存储。测试系统偶尔会删除 包和账户。最好使用TestPyPI进行测试和实验 就像这个教程。 当您准备好将一个真实的包上传到Python包索引时您可以 执行与本教程中相同的操作但使用这些重要的 差异 为您的包裹选择一个难忘且独特的名称。你不必附加 您的用户名就像您在教程中所做的那样但您不能使用现有的名称。 在https//pypi.org上注册一个帐户-请注意这是两个独立的 服务器和来自测试服务器的登录详细信息不与 主服务器 使用twine upload dist/*上传包并输入凭据 你在真实的PyPI上注册的账户 既然你上传了 在生产环境中您不需要指定--repository; 默认情况下包将上传到https//pypi.org/。 使用python3 -m pip install [your-package]从真实的PyPI安装您的软件包。 在这一点上如果你想关于打包Python库的信息请点击这里。 你可以做的一些事情 阅读有关您选择的构建后端的高级配置 Hatchling, setuptools, Flit, PDM.。 查看本网站上的指南了解更多高级 实用信息或讨论 了解有关特定主题的解释和背景。 考虑打包工具这些工具提供单个命令行界面 项目管理和包装如hatch, flit, pdm, 和poetry。 注意到 [1] 从技术上讲你也可以创建没有__init__.py文件的Python包 但它们被称为命名空间包 并将其视为高级主题本教程中未涉及。 如果您刚刚开始使用Python打包建议您 坚持使用常规包和__init__.py即使文件是空的。
http://www.ho-use.cn/article/10824217.html

相关文章:

  • 库尔勒市建设路街道办网站wordpress卡密系统源码主题
  • 做美剧网站侵权wordpress电子商务视频教程
  • 注册网站授权书怎么写h5个人网站代码
  • 广州网站建设网页制作开发企业信用信息查询公示系统河南
  • 潮州网站设计新闻列表做的最好的网站
  • 东营微信网站制作网页设计html成品免费
  • 网站切换宁德网站建设公司
  • 怎么建设可以收费的网站开发小程序需要的技术
  • 网页设计师是什么专业台州网站优化公司
  • 网站301多久apico手机app开发
  • 职工之家网站开发新闻稿教育培训机构网站模板
  • 用云空间制作网站百度推广助手手机版
  • 用h5做网站是什么意思深互动平台网站
  • 辛集建设网站用dw怎么做登录页面的网站
  • 济南济南网站建设公司个人网站 名称
  • 广州网站开发定制需要多少钱网页版qq音乐在线登录
  • 信息发布网站推广技巧从化网站建设方案
  • 做一个大型网站番禺人才网官网
  • 电子商务网站建设的作用wordpress留言板代码
  • 网站收缩栏杭州定制网站制作
  • 空间放两个网站vi设计公司简介
  • 百色市右江区了建设局网站麦云短链接
  • 网站建设的总结100字运城哪里做网站
  • 电子商务专业网站设计wordpress登录开发文档
  • 网站主机的类型中国建筑股份有限公司
  • 即墨专业医院网站制作公司wordpress 封禁账号
  • 仿站工具教程昆明网站建设是什么意思
  • 新型h5网站建设贵阳网站开发推荐
  • 凡科网站内容怎么做效果好河北seo
  • 男孩子怎么做网站推广北京网站制作设计与开发服务