pip - 有没有办法使用 pip 获取没有版本信息的已安装模块?

标签 pip python-packaging python-importlib

我试过pip freeze 。我需要它只输出由换行符分隔的模块,例如 pip freeze ,除非没有版本号,因为我正在尝试创建一个自动升级程序,并且想要执行 pip install --upgrade <module>其中“”是不带版本号的模块名称,因为据我所知,如果您尝试升级模块,则不应提供版本号。例如:

colorama  
Flask  
pywin32    

而不是pip freeze会做:

colorama==\<version>  
Flask==\<version>  
pywin32==\<version>    

其中“”是版本。
我查看了 pip freeze 的 pip 命令或选项的文档,但没有找到。我使用的是 Windows 10。

最佳答案

对于纯 Python (3.7+) 版本:

python -c "import importlib.metadata; print('\n'.join([d.metadata['Name'] for d in importlib.metadata.distributions()]))"

引用文献:

关于pip - 有没有办法使用 pip 获取没有版本信息的已安装模块?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64322829/

相关文章:

python - 模块 'pip._internal.download' 没有属性 'is_file_url'

python - miniconda 安装会影响标准 python 安装吗?

python - 使另一个模块可以从我的 Python 模块中导入

python - Python 中命名空间包的相对位置和内容 >= 3.3

python - 从另一个包中动态导入一个包

python - 使用 import_module 从不同目录导入模块

python-2.7 - 如何在 64 位 Windows 7 上安装 python_ldap?

python - setup.py 用于通过 pip 卸载

python - 名称中带有波浪号的 Anaconda/Python 站 pip 包子文件夹 - 它们是什么?

python - 模块 'importlib' 没有属性 'util'