Answers:
如果您已经进行了pip安装,并且想查看安装程序工具已安装了哪些软件包,则可以简单地调用以下命令:
pip freeze
它还将包含已安装软件包的版本号。
更新资料
pip已更新,可以产生与pip freeze
调用相同的输出:
pip list
注意
的输出pip list
格式不同,因此,如果您有一些shell脚本来解析(可能是获取版本号)的输出,freeze
并且想要将脚本更改为call list
,则需要更改解析代码。
pip list
的别名pip freeze
。它写起来很直观pip freeze > requirements.txt
,但不是pip freeze
。
pip list
:pip-installer.org/en/latest/usage.html#pip-list-因此,这实际上已经来了!
help('modules')
应该为你做。
在IPython中:
In [1]: import #import press-TAB
Display all 631 possibilities? (y or n)
ANSI audiodev markupbase
AptUrl audioop markupsafe
ArgImagePlugin avahi marshal
BaseHTTPServer axi math
Bastion base64 md5
BdfFontFile bdb mhlib
BmpImagePlugin binascii mimetools
BufrStubImagePlugin binhex mimetypes
CDDB bisect mimify
CDROM bonobo mmap
CGIHTTPServer brlapi mmkeys
Canvas bsddb modulefinder
CommandNotFound butterfly multifile
ConfigParser bz2 multiprocessing
ContainerIO cPickle musicbrainz2
Cookie cProfile mutagen
Crypto cStringIO mutex
CurImagePlugin cairo mx
DLFCN calendar netrc
DcxImagePlugin cdrom new
Dialog cgi nis
DiscID cgitb nntplib
DistUpgrade checkbox ntpath
Package.version()
或package.__version__
或package.ver
或任何其他一些可能性
如果要获取有关已安装的python发行版的信息,并且不想使用其cmd控制台或终端,而希望通过python代码,则可以使用以下代码(经过python 3.4测试):
import pip #needed to use the pip functions
for i in pip.get_installed_distributions(local_only=True):
print(i)
该pip.get_installed_distributions(local_only=True)
函数调用返回一个可迭代的对象,由于使用了for循环和打印功能,该可迭代对象中包含的元素被换行符(\n
)分开打印。结果(取决于您安装的发行版)将如下所示:
cycler 0.9.0
decorator 4.0.4
ipykernel 4.1.0
ipython 4.0.0
ipython-genutils 0.1.0
ipywidgets 4.0.3
Jinja2 2.8
jsonschema 2.5.1
jupyter 1.0.0
jupyter-client 4.1.1
#... and so on...
pkg_resources
?AFAICR这是的一部分setuptools
。不pip
。我们可以安全地假设setuptools
仅在依赖时才可用pip
吗?
可以尝试:蛋黄
对于安装蛋黄,请尝试:
easy_install yolk
Yolk是一个Python工具,用于获取有关已安装的Python软件包的信息并查询可在PyPI(Python软件包索引)上使用的软件包。
您可以通过查询PyPI查看哪些软件包处于活动状态,非活动状态或处于开发模式,并向您显示哪些软件包可用。
要在更高版本的pip(在上测试)上运行此命令,请pip==10.0.1
使用以下命令:
from pip._internal.operations.freeze import freeze
for requirement in freeze(local_only=True):
print(requirement)
pydoc pip._internal
help(pip._internal)
状态如何?我看到了,但在,pip .__ builtins_等下无法到达。pip参考指南也为空。
_internal
它。似乎该功能尚未正式公开。因此,您应该谨慎处理!
从命令行
python -c help('modules')
可用于查看所有模块以及特定模块
python -c help('os')
对于Linux,以下版本适用
python -c "help('os')"
-bash: syntax error near unexpected token `('
是!您应该将pip用作python包管理器(http://pypi.python.org/pypi/pip)
使用pip安装的软件包,您可以
pip freeze
它将列出所有已安装的软件包。您可能还应该使用virtualenv和virtualenvwrapper。当您开始一个新项目时,您可以
mkvirtualenv my_new_project
然后(在virtualenv内)
pip install all_your_stuff
这样,您可以workon my_new_project
然后pip freeze
查看为该virtualenv / project安装了哪些软件包。
例如:
➜ ~ mkvirtualenv yo_dude
New python executable in yo_dude/bin/python
Installing setuptools............done.
Installing pip...............done.
virtualenvwrapper.user_scripts creating /Users/aaylward/dev/virtualenvs/yo_dude/bin/predeactivate
virtualenvwrapper.user_scripts creating /Users/aaylward/dev/virtualenvs/yo_dude/bin/postdeactivate
virtualenvwrapper.user_scripts creating /Users/aaylward/dev/virtualenvs/yo_dude/bin/preactivate
virtualenvwrapper.user_scripts creating /Users/aaylward/dev/virtualenvs/yo_dude/bin/postactivate
virtualenvwrapper.user_scripts creating /Users/aaylward/dev/virtualenvs/yo_dude/bin/get_env_details
(yo_dude)➜ ~ pip install django
Downloading/unpacking django
Downloading Django-1.4.1.tar.gz (7.7Mb): 7.7Mb downloaded
Running setup.py egg_info for package django
Installing collected packages: django
Running setup.py install for django
changing mode of build/scripts-2.7/django-admin.py from 644 to 755
changing mode of /Users/aaylward/dev/virtualenvs/yo_dude/bin/django-admin.py to 755
Successfully installed django
Cleaning up...
(yo_dude)➜ ~ pip freeze
Django==1.4.1
wsgiref==0.1.2
(yo_dude)➜ ~
或者,如果您有一个带有requirements.pip文件的python软件包,
mkvirtualenv my_awesome_project
pip install -r requirements.pip
pip freeze
会成功的
pip
以这种方式使用它!
virtualenv
全局站点包,则需要使用pip list --local
。
virtualenv
。我不知道不使用它们的任何原因,virtualenv
如果您愿意,没有人会阻止您将其限制为孤立的。
这是一种使用方法来PYTHONPATH
代替python libs dir的绝对路径的方法:
for d in `echo "${PYTHONPATH}" | tr ':' '\n'`; do ls "${d}"; done
[ 10:43 Jonathan@MacBookPro-2 ~/xCode/Projects/Python for iOS/trunk/Python for iOS/Python for iOS ]$ for d in `echo "$PYTHONPATH" | tr ':' '\n'`; do ls "${d}"; done
libpython2.7.dylib pkgconfig python2.7
BaseHTTPServer.py _pyio.pyc cgitb.pyo doctest.pyo htmlentitydefs.pyc mimetools.pyc plat-mac runpy.py stringold.pyc traceback.pyo
BaseHTTPServer.pyc _pyio.pyo chunk.py dumbdbm.py htmlentitydefs.pyo mimetools.pyo platform.py runpy.pyc stringold.pyo tty.py
BaseHTTPServer.pyo _strptime.py chunk.pyc dumbdbm.pyc htmllib.py mimetypes.py platform.pyc runpy.pyo stringprep.py tty.pyc
Bastion.py _strptime.pyc chunk.pyo dumbdbm.pyo htmllib.pyc mimetypes.pyc platform.pyo sched.py stringprep.pyc tty.pyo
Bastion.pyc _strptime.pyo cmd.py
....