如果anaconda不想装c盘,装其他盘的话,会遇到一个奇怪的问题:conda list查看明明 安装包已经在里面了,但是代码总报错 找不到module。

 

原因:windows 环境下,Python pip 安装库的时候,默认安装在c盘,比如C:\Users\eric\AppData\Roaming\Python\Python37\site-packages, 而此时anaconda不装C盘的话,就会报错了。可能原因是目录不一致,  python找的默认路径是C:\\Users\\xxx\\AppData\\Roaming\\Python, 找不到新的安装路径。

解决办法:修改pip默认install路径到anaconda装的位置

 

具体步骤:

1、查看目前安装路径:

python -m site
sys.path = [
'F:\\',
'D:\\Programs\\Python\\Python37\\python37.zip',
'D:\\Programs\\Python\\Python37\\DLLs',
'D:\\Programs\\Python\\Python37\\lib',
'D:\\Programs\\Python\\Python37',
'C:\\Users\\eric\\AppData\\Roaming\\Python\\Python37\\site-packages',
'D:\\Programs\\Python\\Python37\\lib\\site-packages',
]
USER_BASE: 'C:\\Users\\eric\\AppData\\Roaming\\Python' (exists)
USER_SITE: 'C:\\Users\\eric\\AppData\\Roaming\\Python\\Python37\\site-packages' (exists)
ENABLE_USER_SITE: True

其中, USER_BASE和USER_SITE就是默认的路径

2、查看配置文件

F:\>python -m site --help
D:\Programs\Python\Python37\lib\site.py [--user-base] [--user-site]Without arguments print some useful information
With arguments print the value of USER_BASE and/or USER_SITE separated
by ';'.Exit codes with --user-base or --user-site:
  0 - user site directory is enabled
  1 - user site directory is disabled by user
  2 - uses site directory is disabled by super user
      or for security reasons
 >2 - unknown error

D:\Programs\Python\Python37\lib\site.py,就是配置文件的路径

3、修改路径:

  • 修改D:\Programs\Python\Python37\lib\site.py
ENABLE_USER_SITE = True
 
USER_SITE = r"D:\Programs\Python\Python37\Lib\site-packages" 
USER_BASE = r"D:\Programs\Python\Python37\Scripts"

4、检查:

F:\>python -m site
sys.path = [
    'F:\\',
    'D:\\Programs\\Python\\Python37\\python37.zip',
    'D:\\Programs\\Python\\Python37\\DLLs',
    'D:\\Programs\\Python\\Python37\\lib',
    'D:\\Programs\\Python\\Python37',
    'D:\\Programs\\Python\\Python37\\Lib\\site-packages',
]
USER_BASE: 'D:\\Programs\\Python\\Python37\\Scripts' (exists)
USER_SITE: 'D:\\Programs\\Python\\Python37\\Lib\\site-packages' (exists)
ENABLE_USER_SITE: True