是什麼命令的區別:和不同的安裝包的列表唱「點子名單」和「pip.get_installed_distributions()」
$ pip list
,我可以在命令行中運行,:
import pip
pip.get_installed_distributions()
我在python
環境中運行。
爲什麼他們返回已安裝軟件包的不同列表?
是什麼命令的區別:和不同的安裝包的列表唱「點子名單」和「pip.get_installed_distributions()」
$ pip list
,我可以在命令行中運行,:
import pip
pip.get_installed_distributions()
我在python
環境中運行。
爲什麼他們返回已安裝軟件包的不同列表?
據pip.get_installed_distributions()
從source code定義 -
def get_installed_distributions(local_only=True,
skip=stdlib_pkgs,
include_editables=True,
editables_only=False,
user_only=False):
這是默認與local_only
集運行作爲True
,而當你做pip list
,它會顯示所有的包本地和全局,這是在你的情況下可能發生的事情,並導致你看到更多的軟件包安裝(包括本地和全球)。
嘗試運行pip list --local
只得到本地安裝的軟件包
或
pip.get_installed_distributions(local_only=False)
獲得全球包爲好。
它對我來說也是一樣。你確定你在運行'python'的同一個env中運行'pip list'嗎? – davidism
你的$ PATH有什麼? –
@davidism我打開一個終端並運行'pip list',我得到一個長列表。然後我在同一個終端會話中輸入一個'python'環境並使用'pip.get_installed_distributions()'命令,我得到一個更短的列表。 – Gabriel