Python软件包的多个位置

时间:2019-02-04 00:01:15

标签: python python-3.x python-2.7

我对计算还很陌生,在对各种Python软件包安装位置进行分类时遇到了麻烦(编辑:在macOS Mojave上)。我似乎在下面有各种python包:

/ Library / Python:我在这里有2.6、2.7和3.6。 2.7包含我已下载的软件包,其他两个大多为空

/ usr / local:在Homebrew的Cellar / python中,我有一个3.7,在/ lib中,我有很多Python 3.7包

/ Users / user / Library / Python:2.7有很多软件包,3.7有我认为我没有下载的其他软件包(astroid,plylint,6,wrept)

我的问题是我使用pip3进行安装,并且通常使用常规pip以及备份进行安装,但是当我尝试使用为python3下载的软件包时,似乎无法找到它们。 我希望很明显我不太了解。我尝试在其他地方找到答案,但似乎无法。任何帮助表示赞赏!

1 个答案:

答案 0 :(得分:0)

系统Python

您可以检查python和pip的绝对路径和版本以获得清晰的概述:

$ which -a python
/opt/miniconda/bin/python
/usr/local/bin/python
/usr/bin/python

$ which -a pip
/opt/miniconda/bin/pip
/usr/local/bin/pip

然后您可以使用以下方法检查版本:

$ /usr/bin/python --version
Python 2.7.10

$ /usr/local/bin/pip --version
pip 18.1 from /usr/local/lib/python2.7/site-packages/pip (python 2.7)

您可以使用以下方式列出已安装的软件包:

$ /usr/local/bin/pip freeze
protobuf==3.6.1
pycairo==1.18.0
six==1.11.0

Conda

尽管如此,我还是建议您检查Anaconda,或者最好检查miniconda(请参阅differences)。它可以帮助您使用不同的Python和软件包版本安装和管理不同的环境。安装后,您通常执行以下操作:

$ conda create -n env_name python=3.7 -y
$ source activate env_name
$ conda install scikit-learn pandas

路径:

$ which python
/opt/miniconda/envs/env_name/bin/python

$ which pip
/opt/miniconda/envs/env_name/bin/pip

版本:

$ python --version
Python 3.7.2

$ pip --version
pip 18.1 from /opt/miniconda/envs/env_name/lib/python3.7/site-packages/pip 

已安装的软件包:

$ pip freeze
certifi==2018.11.29
mkl-fft==1.0.10
mkl-random==1.0.2
numpy==1.15.4
pandas==0.24.0
python-dateutil==2.7.5
pytz==2018.9
scikit-learn==0.20.2
scipy==1.2.0
six==1.12.0

或者整个conda环境env_name

$ conda env export
name: env_name
channels:
  - defaults
dependencies:
  - blas=1.0=mkl
  - ca-certificates=2018.12.5=0
  - certifi=2018.11.29=py37_0
  - intel-openmp=2019.1=144
  - libcxx=4.0.1=hcfea43d_1
  - libcxxabi=4.0.1=hcfea43d_1
  - libedit=3.1.20181209=hb402a30_0
  - libffi=3.2.1=h475c297_4
  - libgfortran=3.0.1=h93005f0_2
  - mkl=2019.1=144
  - mkl_fft=1.0.10=py37h5e564d8_0
  - mkl_random=1.0.2=py37h27c97d8_0
  - ncurses=6.1=h0a44026_1
  - numpy=1.15.4=py37hacdab7b_0
  - numpy-base=1.15.4=py37h6575580_0
  - openssl=1.1.1a=h1de35cc_0
  - pandas=0.24.0=py37h0a44026_0
  - pip=18.1=py37_0
  - python=3.7.2=haf84260_0
  - python-dateutil=2.7.5=py37_0
  - pytz=2018.9=py37_0
  - readline=7.0=h1de35cc_5
  - scikit-learn=0.20.2=py37h27c97d8_0
  - scipy=1.2.0=py37h1410ff5_0
  - setuptools=40.6.3=py37_0
  - six=1.12.0=py37_0
  - sqlite=3.26.0=ha441bb4_0
  - tk=8.6.8=ha441bb4_0
  - wheel=0.32.3=py37_0
  - xz=5.2.4=h1de35cc_4
  - zlib=1.2.11=h1de35cc_3
prefix: /opt/miniconda/envs/env_name