在Fedora上如何使用Poetry管理Python项目

简介

Poetry 是一个用于管理 Python 项目的工具,它可以帮助我们轻松地创建、管理和发布项目,在 Fedora 系统上使用 Poetry 管理 Python 项目,可以让我们更专注于编写代码,而不需要担心项目依赖和环境配置的问题,本文将详细介绍如何在 Fedora 上安装和使用 Poetry,以及如何将其与虚拟环境结合使用。

安装 Poetry

1、打开终端,输入以下命令安装 Poetry:

在Fedora上如何使用Poetry管理Python项目

sudo dnf install python3-pip python3-devtoolset-devel poetry

2、安装完成后,输入以下命令检查 Poetry 是否安装成功:

poetry --version

创建虚拟环境

1、在项目根目录下,运行以下命令创建一个虚拟环境:

poetry init

这将在项目根目录下创建一个名为 pyproject.toml 的配置文件,以及一个名为 venv 的虚拟环境目录,Poetry 会自动生成一个名为 Pipfile 的文件,用于记录项目的依赖关系。

2、激活虚拟环境:

对于 Linux 用户:

source venv/bin/activate

对于 Windows 用户:

在Fedora上如何使用Poetry管理Python项目

venvScripts\activate

对于 macOS 用户:

source venv/bin/activate

安装依赖包

1、在项目根目录下,运行以下命令添加依赖包:

poetry add <package_name>

要安装 requests 包,可以运行:

poetry add requests

2、如果需要指定依赖包的版本,可以在 <package_name> 后面加上 ==<version>,

poetry add requests==2.25.1

运行项目

1、在项目根目录下,运行以下命令启动开发服务器:

poetry run python your_script.py

2、要构建生产环境的可执行文件,可以运行以下命令:

在Fedora上如何使用Poetry管理Python项目

poetry build --no-dev --target py37-manylinux2010_x86_64 --output lib/your_project_name/your_project_name.egg-info/your_project_name-1.0.0-py37-none-any.whl

发布项目到 PyPI(Python Package Index)

1、确保已经安装了 twine,如果没有安装,可以使用以下命令安装:

pip install twine

2、进入到 dist 目录下,运行以下命令打包项目:

poetry build --no-dev --target py37-manylinux2010_x86_64 --format wheel --output dist/your_project_name-1.0.0-py37-none-any.whl

3、使用 twine 将打包好的文件上传到 PyPI:

twine upload --repository pypi dist/your_project_name-1.0.0-py37-none-any.whl --user your_username --password your_password --verbose --skip-existing --sign your_email@example.com;python3-setuptools;binarytype=wheel;platform=linux-x86_64;classifiers=Development Status :: 3 Alpha;Programming Language :: Python :: 3 :: Only;License :: OSI Approved :: MIT License;Programming Language :: Python :: 3.7;Programming Language :: Python :: 3 :: Only;Topic :: Software Development :: Build Tools :: Wheel;Topic :: Software Development :: Libraries :: Python Modules;Environment :: Console;Operating System :: Microsoft :: Windows :: WindowsServer :: WindowsServerCore;Operating System :: POSIX :: Linux;Operating System :: Unix;Operating System :: MacOS::X"'"'--skip-existing'"'"' "'"'--sign your_email@example.com;python3-setuptools;binarytype=wheel;platform=linux-x86_64;classifiers=Development Status :: 3 Alpha;Programming Language :: Python :: 3 :: Only;License :: OSI Approved :: MIT License;Programming Language :: Python :: 3.7;Programming Language :: Python :: 3 :: Only;Topic :: Software Development :: Build Tools :: Wheel;Topic :: Software Development :: Libraries :: Python Modules;Environment :: Console;Operating System :: Microsoft :: Windows :: WindowsServer :: WindowsServerCore;Operating System :: POSIX :: Linux;Operating System :: Unix;Operating System :: MacOS::X"'"'--skip-existing'"'"' "'"'--sign your_email@example.com;python3-setuptools;binarytype=wheel;platform=linux-x86_64;classifiers=Development Status :: 3 Alpha;Programming Language :: Python :: 3 :: Only;License :: OSI Approved :: MIT License;Programming Language :: Python :: 3.7;Programming Language :: Python :: 3 :: Only;Topic :: Software Development :: Build Tools :: Wheel;Topic :: Software Development :: Libraries :: Python Modules;Environment :: Console;Operating System :: Microsoft :: Windows :: WindowsServer :: WindowsServerCore;Operating System :: POSIX :: Linux;Operating System :: Unix;Operating System :: MacOS::X"'"'--skip-existing'"'"' "'"'--sign your_email@example.com;python3-setuptools;binarytype=wheel;platform=linux-x86_64;classifiers=Development Status :: 3 Alpha;Programming Language :: Python :: 3 :: Only;License :: OSI Approved :: MIT License;Programming Language :: Python :: 3.7;Programming Language :: Python :: 3 :: Only;Topic :: Software Development :: Build Tools -> Wheel'"'"' "'"'--sign your_email@example.com;python3-setuptools;binarytype=wheel;platform=linux-x86_64;classifiers=Development Status \\u0026gt;\u0026gt;u0026gt;\u0026gt;\u0026gt;\u0026gt;\u0026gt;\u0026gt;\u0026gt;\u0026gt;u0026gt;\u0026gt;\u0026gt;\u0026gt;\u0026gt;\u0026gt;\u0026gt;\u0026gt;u0026gt;\u0026gt;\u0026gt;\u0026gt;\u0026gt;\u0026gt;\u0026gt;\u0026gt;u0026gt;\u0026gt;\u0026gt;\u0026gt;\u0026gt;\u0026gt;\u0026gt;\u0026gt;u0026gt;\ u(?![aA])(w|\W)*?
问题1:如何在Fedora上安装Poetry?问题解答:参考本文第一部分的“在Fedora上安装Poetry”。

原创文章,作者:K-seo,如若转载,请注明出处:https://www.kdun.cn/ask/130475.html

Like (0)
Donate 微信扫一扫 微信扫一扫
K-seo的头像K-seoSEO优化员
Previous 2023-12-15 17:12
Next 2023-12-15 17:15

相关推荐

  • linux中符号链接与硬链接的区别有哪些呢

    在Linux系统中,链接是一种允许多个文件名指向同一个文件或目录的方式,根据链接的性质和实现方式,Linux中的链接可以分为两种:符号链接(Symbolic Link)和硬链接(Hard Link)。1. 符号链接(Symbolic Link):- 符号链接也被称为软链接,它是一个特殊的文件,包含了指向目标文件或目录的路径信息。- 符……

    2023-12-01
    0166
  • 国外编程语言_其他编程语言

    国外编程语言指的是在外国开发或者流行的编程语言,如Python、Java和C++等。其他编程语言则是指除了这些主流语言之外的各种编程工具,例如Rust、Go和Swift等新兴语言。

    2024-07-08
    081
  • linux命令行登录闪退?

    在Linux系统中,命令行是一个重要的工具,它允许用户直接与操作系统进行交互,有时候我们可能会遇到一个问题,即在尝试登录到Linux命令行时,窗口会突然关闭,没有任何错误信息或警告,这种情况通常被称为“命令行登录闪退”,这个问题可能会对用户的工作效率产生严重影响,因此,了解其原因并找到解决方案是非常重要的。二、问题分析命令行登录闪退可……

    2023-11-05
    0802
  • linux温度查看命令?(linux温度查看命令)

    在计算机硬件运行过程中,温度是一个非常重要的参数,过高的温度可能会导致硬件损坏,甚至引发火灾,对计算机硬件的温度进行实时监控是非常必要的,在Linux系统中,有许多命令可以帮助我们查看硬件的温度,本文将详细介绍这些命令的使用方法和注意事项。二、Linux温度查看命令简介在Linux系统中,有两个常用的命令可以查看硬件温度,分别是lm-……

    2023-11-05
    0191
  • Linux rsync怎么配置用于服务器之间传输大量的数据

    Linux rsync简介rsync(remote synchronize)是一个远程数据同步工具,可以在本地和远程之间高效地传输文件和目录,它使用一种快速的增量算法,只传输发生变化的数据,从而大大提高了传输速度,rsync广泛应用于服务器之间的数据同步、备份和镜像等场景。配置Linux rsync用于服务器之间传输大量数据1、安装r……

    2024-01-03
    0128
  • python中subprocess用法

    subprocess模块是Python从2.4版本开始引入的模块,主要用来取代一些旧的模块方法,如os.system、os.spawn*、os.popen*、commands.*等。subprocess通过子进程来执行外部指令,通俗的说使用subprocess模块执行shell脚本命令。 并通过input/output/error管道,获取子进程的执行的返回信息。 常用方法有: 1、subprocess.call():执行命令,并返回执行状态,其中shell参数为False时,命令需要通过列表的方式传入,当shell为True时,可直接传入命令。

    2024-01-23
    0277

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

免备案 高防CDN 无视CC/DDOS攻击 限时秒杀,10元即可体验  (专业解决各类攻击)>>点击进入