日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

终于可以摆脱 Pipenv 这坑货了

發布時間:2024/9/15 编程问答 77 豆豆
生活随笔 收集整理的這篇文章主要介紹了 终于可以摆脱 Pipenv 这坑货了 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

之前在介紹一些管理 Python 虛擬環境的工具時,比如 pipenv,virtualenv 等,總有讀者留言,希望我整一期 poetry 的。

在接觸 poetry 之前,我以為 pipenv 已經是我心目中最理想的虛擬環境工具,直到 19年 看過@李輝?的一篇文章(http://greyli.com/do-not-use-pipenv/)才讓我開始動搖,原來一直輕量使用的我,一直沒有感覺到 pipenv 的各種問題,咱也不知道經過這幾年的發展,pipenv 是否有所改進?不過我想對于曾經?"深受其害" 的用戶來說,可能早就投入了 poetry 的懷抱。

廢話不多說,直接上干貨。

# 1. 安裝 poetry

poetry提供多種安裝方式,個人推薦從以下2種方式中選擇:

方式一:(推薦)使用在線腳本進行安裝,是最為推薦的安裝方式

$?curl?-sSL?https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py?|?python

方式二:(pip) 官方不建議這么做,因為有可能會造成依賴沖突,可以考慮用 pipx 或 pipsi

$?pip?install?--user?poetry

安裝后,可以使用如下命令檢測是否可用

$?poetry?--version Poetry?version?1.1.4

# 2. 創建項目

如果你是在一個已有的項目里使用 Poetry,你只需要執行 poetry init 命令來創建一個 pyproject.toml 文件:

$?poetry?init

而如果是新建 一個項目,可以使用這個命令

$?poetry?new?demo-priject

運行完后,在當前目錄下就會多一個 demo-project 的目錄,這個目錄下的文件結構如下

$?tree?demo-priject demo-priject ├──?README.rst ├──?demo_priject │???└──?__init__.py ├──?pyproject.toml └──?tests├──?__init__.py└──?test_demo_priject.py

如果要把項目代碼放入到 src 目錄下,在創建項目時,可以加上 --src 參數。

# 3. 創建虛擬環境

使用 poetry install 命令創建虛擬環境(確保當前目錄有 pyproject.toml 文件):

$?poetry?install

這個命令會讀取 pyproject.toml 中的所有依賴(包括開發依賴)并安裝,如果不想安裝開發依賴,可以附加 --no-dev 選項。如果項目根目錄有 poetry.lock 文件,會安裝這個文件中列出的鎖定版本的依賴。如果執行 add/remove 命令的時候沒有檢測到虛擬環境,也會為當前目錄自動創建虛擬環境。

# 4. 使用虛擬環境

創建虛擬環境后,如果想要在虛擬環境下執行命令,比如去執行腳本,去使用 pip list 等等。

可以在項目目錄下,使用如下命令

$?poetry?run?<commands>

比如我查看該虛擬環境中安裝了哪些包

$?poetry?run?pip?list

再比如我想在該虛擬環境下執行 app.py

$?poetry?run?python?app.py

每次在虛擬環境下做點啥事,命令前面都要加上 poetry run,有點太麻煩了。

這時可以使用下面這條命令,直接激活當前的虛擬環境

$?poetry?shell

# 5. 包的管理

安裝包

$?poetry?add?<pkg>

添加 --dev 參數可以指定為開發依賴

$?poetry?add?pytest?--dev

查看所有安裝的依賴包

$?poetry?show

加上 --tree 可以查看他們的依賴關系

$?poetry?show?--tree

加上 --outdated 可以查看可以更新的依賴

$?poetry?show?--outdated

如果要更新依賴可以執行這個命令

#?更新全部 $?poetry?update#?更新某個依賴 $?poetry?update?foo

想卸載某個包,用這個命令

$?poetry?remove?foo

# 6. 常用配置

Poetry 的配置存儲在單獨的文件中,比 Pipenv 設置環境變量的方式要方便一點。配置通過 poetry config 命令設置,比如下面的命令可以寫入 PyPI 的賬號密碼信息:

$?poetry?config?http-basic.pypi?username?password

下面的命令設置在項目內創建虛擬環境文件夾:

$?poetry?config?settings.virtualenvs.in-project?true

另一個常用的配置是設置 PyPI 鏡像源,以使用豆瓣提供的 PyPI 鏡像源為例,你需要在 pyproject.toml 文件里加入這部分內容:

[[tool.poetry.source]] name?=?"douban" url?=?"https://pypi.doubanio.com/simple/"

推薦閱讀

牛逼!Python常用數據類型的基本操作(長文系列第①篇)

牛逼!Python的判斷、循環和各種表達式(長文系列第②篇)

牛逼!Python函數和文件操作(長文系列第③篇)

牛逼!Python錯誤、異常和模塊(長文系列第④篇)

總結

以上是生活随笔為你收集整理的终于可以摆脱 Pipenv 这坑货了的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。