回答:
pip installがあり、インストーラーツールでインストールされているパッケージを確認する場合は、次のように呼び出すだけです。
pip freeze
インストールされたパッケージのバージョン番号も含まれます。
更新
pipも更新されpip freeze
、次の呼び出しと同じ出力が生成されます。
pip list
注意
からの出力pip list
はフォーマットが異なるため、の出力を解析する(おそらくバージョン番号を取得する)シェルスクリプトがfreeze
あり、スクリプトをに変更するlist
場合は、解析コードを変更する必要があります。
pip list
のエイリアスとして提供する必要がありますpip freeze
。書くのpip freeze > requirements.txt
は直感的ですが、そうではありませんpip freeze
。
pip list
/ 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)
関数呼び出しは、反復可能に返し、理由のために、ループと印刷機能に含まれる要素の反復可能に改行文字で区切られたプリントアウトされます(\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パッケージに関する情報を取得し、PyPI(Python Package Index)で利用可能なパッケージをクエリするための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 `('
はい!あなたはあなたのpythonパッケージマネージャとしてpipを使うべきです(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の/プロジェクトのために設置されているパッケージを確認してください。
例えば:
➜ ~ 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
....