【问题标题】:"pip freeze" shows extra packages too?“pip freeze”也显示额外的包?
【发布时间】:2018-04-25 13:03:14
【问题描述】:

我正在尝试做一个pip freeze -l > requirements.txt。我在 virtualenv 中运行它。然而,即使使用了-l 选项,pip freeze 也会给我一个所有安装在我系统中的软件包的列表,这是一个巨大且不必要的长列表。我只需要 Flask 和其他一些库,但这是它给我的列表:

altgraph (0.10.2)
bdist-mpkg (0.5.0)
beautifulsoup4 (4.5.3)
bonjour-py (0.3)
cachetools (2.0.1)
certifi (2017.7.27.1)
chardet (3.0.4)
click (6.7)
Flask (0.12.1)
futures (3.1.1)
google (1.9.3)
google-api-python-client (1.6.4)
google-auth (1.2.0)
google-auth-httplib2 (0.0.2)
google-auth-oauthlib (0.1.1)
gunicorn (19.7.1)
httplib2 (0.10.3)
idna (2.6)
itsdangerous (0.24)
Jinja2 (2.9.6)
macholib (1.5.1)
MarkupSafe (1.0)
matplotlib (1.3.1)
modulegraph (0.10.4)
numpy (1.12.1)
oauth2client (4.1.2)
oauthlib (2.0.6)
pbr (2.0.0)
pip (9.0.1)
psycopg2 (2.7.3.2)
py2app (0.7.3)
pyasn1 (0.3.7)
pyasn1-modules (0.1.5)
pyobjc-core (2.5.1)
pyobjc-framework-Accounts (2.5.1)
pyobjc-framework-AddressBook (2.5.1)
pyobjc-framework-AppleScriptKit (2.5.1)
pyobjc-framework-AppleScriptObjC (2.5.1)
pyobjc-framework-Automator (2.5.1)
pyobjc-framework-CFNetwork (2.5.1)
pyobjc-framework-Cocoa (2.5.1)
pyobjc-framework-Collaboration (2.5.1)
pyobjc-framework-CoreData (2.5.1)
pyobjc-framework-CoreLocation (2.5.1)
pyobjc-framework-CoreText (2.5.1)
pyobjc-framework-DictionaryServices (2.5.1)
pyobjc-framework-EventKit (2.5.1)
pyobjc-framework-ExceptionHandling (2.5.1)
pyobjc-framework-FSEvents (2.5.1)
pyobjc-framework-InputMethodKit (2.5.1)
pyobjc-framework-InstallerPlugins (2.5.1)
pyobjc-framework-InstantMessage (2.5.1)
pyobjc-framework-LatentSemanticMapping (2.5.1)
pyobjc-framework-LaunchServices (2.5.1)
pyobjc-framework-Message (2.5.1)
pyobjc-framework-OpenDirectory (2.5.1)
pyobjc-framework-PreferencePanes (2.5.1)
pyobjc-framework-PubSub (2.5.1)
pyobjc-framework-QTKit (2.5.1)
pyobjc-framework-Quartz (2.5.1)
pyobjc-framework-ScreenSaver (2.5.1)
pyobjc-framework-ScriptingBridge (2.5.1)
pyobjc-framework-SearchKit (2.5.1)
pyobjc-framework-ServiceManagement (2.5.1)
pyobjc-framework-Social (2.5.1)
pyobjc-framework-SyncServices (2.5.1)
pyobjc-framework-SystemConfiguration (2.5.1)
pyobjc-framework-WebKit (2.5.1)
pyOpenSSL (0.13.1)
pyparsing (2.0.1)
python-dateutil (1.5)
pytz (2013.7)
requests (2.18.4)
requests-oauthlib (0.8.0)
rsa (3.4.2)
scipy (0.13.0b1)
setuptools (18.5)
SimpleCV (1.3)
six (1.11.0)
SQLAlchemy (1.1.15)
stevedore (1.21.0)
uritemplate (3.0.0)
urllib3 (1.22)
vboxapi (1.0)
virtualenv (15.1.0)
virtualenv-clone (0.2.6)
virtualenvwrapper (4.7.2)
Werkzeug (0.12.1)
wheel (0.30.0)
xattr (0.6.4)
zope.interface (4.1.1)

我已尝试对此进行故障排除,以便pip freeze -l 仅显示我当前 virtualenv 根目录中的包以下是目前尚未奏效的内容:

  1. 使用virtualenv --clear venvvirtualenv --no-site-packages venv 重置virtualenv。
  2. 尝试使用 pip freeze | xargs pip uninstall -y found at this answer here 卸载所有本地软件包。我收到了[Errno 1] Operation not permitted 错误,因为出于某种原因,即使我在 virtualenv 中,它也尝试从 OS X 根目录卸载软件包。

任何帮助将不胜感激,谢谢。

【问题讨论】:

  • pip freeze --local 的结果与pip freeze 有什么不同吗?如果有,怎么做?
  • 实际上一点也不。
  • pip freeze --user 怎么样?这是唯一可能相关的其他选项。
  • 似乎没有匹配的包,因为它没有显示一行输出。
  • 愚蠢的问题,但是你在pip freeze之前激活了你的virtualenv吗?

标签: python pip virtualenv


【解决方案1】:

对我来说,问题不在于使用 sudo。

sudo pipenv clean

【讨论】:

    猜你喜欢
    • 2019-12-24
    • 1970-01-01
    • 2016-05-30
    • 2021-02-24
    • 1970-01-01
    • 2019-01-24
    • 2021-09-26
    • 2018-08-26
    相关资源
    最近更新 更多