如何使用miniconda获得完全干净的python环境?

时间:2018-08-13 11:18:53

标签: python conda miniconda

我尝试过:

conda create --name Leaf python==3.6.5

如果我这样做了conda list 我可以找到:

# packages in environment at /home/roychang/miniconda3/envs/Leaf:
#
# Name                    Version                   Build  Channel
ca-certificates           2018.03.07                    0  
certifi                   2018.4.16                py36_0  
libedit                   3.1.20170329         h6b74fdf_2  
libffi                    3.2.1                hd88cf55_4  
libgcc-ng                 7.2.0                hdf63c60_3  
libstdcxx-ng              7.2.0                hdf63c60_3  
ncurses                   6.1                  hf484d3e_0  
openssl                   1.0.2o               h14c3975_1  
pip                       10.0.1                   py36_0  
python                    3.6.5                hc3d631a_2  
readline                  7.0                  ha6073c6_4  
setuptools                40.0.0                   py36_0  
sqlite                    3.24.0               h84994c4_0  
tk                        8.6.7                hc745277_3  
wheel                     0.31.1                   py36_0  
xz                        5.2.4                h14c3975_4  
zlib                      1.2.11               ha838bed_2  

但是,如果我尝试运行一些使用某些程序包的脚本不在此列表中(例如kivy)。 我认为这不应该,但确实可以!

那么MiniConda会自动从原始python根中获取软件包吗? 如何使用MiniConda获得完全干净的python环境?

更新:

似乎我没有很好地解释,我已经激活了该环境,并且在做conda list之后得到的是上面显示的结果。

虽然我没有在该环境下安装kivy,但我在激活环境时可以运行此脚本。在安装MiniConda之前,我仅将kivy安装到原始python。

from kivy.app import App
from kivy.core.window import Window
from kivy.uix.widget import Widget
from kivy.uix.floatlayout import FloatLayout
from kivy.uix.button import Button
from kivy.uix.spinner import Spinner
from kivy.uix.label import Label
from kivy.uix.image import Image
from kivy.uix.textinput import TextInput
from kivy.graphics import Color, Ellipse, Line, Rectangle
from kivy.lang import Builder

还有发现,如果我尝试which python,它会显示:

(Leaf) roychang@ThinkPad-T480:~$ which python
/home/roychang/miniconda3/bin/python

停用环境并再次执行which python后,我得到了相同的结果。 这是预期的吗?我认为它应该在不同的环境中使用不同的python。

conda list在默认环境中(我发现Kivy不在这里):

# Name                    Version                   Build  Channel
asn1crypto                0.24.0                   py36_0
ca-certificates           2018.03.07                    0
certifi                   2018.4.16                py36_0
cffi                      1.11.5           py36h9745a5d_0
chardet                   3.0.4            py36h0f667ec_1
conda                     4.5.4                    py36_0
conda-env                 2.6.0                h36134e3_1
cryptography              2.2.2            py36h14c3975_0
idna                      2.6              py36h82fb2a8_1
libedit                   3.1.20170329         h6b74fdf_2
libffi                    3.2.1                hd88cf55_4
libgcc-ng                 7.2.0                hdf63c60_3
libstdcxx-ng              7.2.0                hdf63c60_3
ncurses                   6.1                  hf484d3e_0
openssl                   1.0.2o               h20670df_0
pip                       10.0.1                   py36_0
pycosat                   0.6.3            py36h0a5515d_0
pycparser                 2.18             py36hf9f622e_1
pyopenssl                 18.0.0                   py36_0
pysocks                   1.6.8                    py36_0
python                    3.6.5                hc3d631a_2
readline                  7.0                  ha6073c6_4
requests                  2.18.4           py36he2e5f8d_1
ruamel_yaml               0.15.37          py36h14c3975_2
setuptools                39.2.0                   py36_0
six                       1.11.0           py36h372c433_1
sqlite                    3.23.1               he433501_0
tk                        8.6.7                hc745277_3
urllib3                   1.22             py36hbe7ace6_0
wheel                     0.31.1                   py36_0
xz                        5.2.4                h14c3975_4
yaml                      0.1.7                had09818_2
zlib                      1.2.11               ha838bed_2

pip list在默认环境中(在这里可以找到海军):

Package                Version
---------------------- ---------
asn1crypto             0.24.0
bcrypt                 3.1.4
bitarray               0.8.3
boto                   2.49.0
boto3                  1.7.74
botocore               1.10.74
certifi                2018.4.16
cffi                   1.11.5
chardet                3.0.4
click                  6.7
coloredlogs            10.0
conda                  4.5.4
cryptography           2.3
Cython                 0.28.2
docutils               0.14
ffmpeg-python          0.1.15
ffmpy                  0.2.2
future                 0.16.0
humanfriendly          4.16.1
idna                   2.7
jmespath               0.9.3
Kivy                   1.10.1
Kivy-Garden            0.1.4
mysql-connector-python 8.0.11
numpy                  1.15.0
paramiko               2.4.1
Pillow                 5.2.0
pip                    10.0.1
protobuf               3.6.0
pyasn1                 0.4.4
pycosat                0.6.3
pycparser              2.18
Pygments               2.2.0
pymongo                3.7.1
PyNaCl                 1.2.1
pyOpenSSL              18.0.0
pyperclip              1.6.2
PySocks                1.6.8
python-dateutil        2.7.3
pytz                   2018.5
pyzmq                  17.1.0
requests               2.19.1
ruamel-yaml            0.15.37
s3transfer             0.1.13
scipy                  1.1.0
setuptools             40.0.0
six                    1.11.0
torchfile              0.1.0
tornado                5.1
urllib3                1.23
visdom                 0.1.8.4
websocket-client       0.48.0
wheel                  0.31.1
zmq                    0.0.0

pip list在Leaf中(在这里也可以找到海军):

Package                Version
---------------------- ---------
asn1crypto             0.24.0
bcrypt                 3.1.4
bitarray               0.8.3
boto                   2.49.0
boto3                  1.7.74
botocore               1.10.74
certifi                2018.4.16
cffi                   1.11.5
chardet                3.0.4
click                  6.7
coloredlogs            10.0
cryptography           2.3
Cython                 0.28.2
docutils               0.14
ffmpeg-python          0.1.15
ffmpy                  0.2.2
future                 0.16.0
humanfriendly          4.16.1
idna                   2.7
jmespath               0.9.3
Kivy                   1.10.1
Kivy-Garden            0.1.4
mysql-connector-python 8.0.11
numpy                  1.15.0
paramiko               2.4.1
Pillow                 5.2.0
pip                    10.0.1
protobuf               3.6.0
pyasn1                 0.4.4
pycparser              2.18
Pygments               2.2.0
pymongo                3.7.1
PyNaCl                 1.2.1
pyOpenSSL              18.0.0
pyperclip              1.6.2
python-dateutil        2.7.3
pytz                   2018.5
pyzmq                  17.1.0
requests               2.19.1
s3transfer             0.1.13
scipy                  1.1.0
setuptools             40.0.0
six                    1.11.0
torchfile              0.1.0
tornado                5.1
umbopython             0.3
urllib3                1.23
visdom                 0.1.8.4
websocket-client       0.48.0
wheel                  0.31.1
zmq                    0.0.0

并且:

roychang@ThinkPad-T480:~$ which pip
/home/roychang/miniconda3/bin/pip
roychang@ThinkPad-T480:~$ act Leaf
(Leaf) roychang@ThinkPad-T480:~$ which pip
/home/roychang/miniconda3/envs/Leaf/bin/pip

最近更新(可能)

仍然没有解决。 但是不知道为什么现在要分离python。

试图卸载Leaf下的Kivy,然后Kivy从两个点列表中消失了。 然后,我将其重新安装在Leaf下,现在只有Leaf获得了Kivy。

1 个答案:

答案 0 :(得分:1)

您已经创建了一个conda环境,但是需要激活。使用

jalazbe@DESKTOP:~$ conda activate Leaf

仅当环境名称位于提示的左侧并且

时,才可以使用它
(Leaf) jalazbe@DESKTOP:~$

如果您现在执行

(Leaf) jalazbe@DESKTOP:~$ conda list 

然后,您将看到conda运行python所需的最少库。 要安装新库,请使用

(Leaf) jalazbe@DESKTOP:~$ conda install name-of-library
# example 
(Leaf) jalazbe@DESKTOP:~$ conda install pandas

我建议您在conda上阅读更多信息