使用 Python 问题汇总
编辑导入第三方模块使用时出现“DLL load failed...”
这种情况出现在我用Anaconda管理第三方模块的时候。在网上找了很长时间也没有解决方法,大部分都是用pip
命令直接安装出现的错误,在经过长时间的挣扎后最终还是放弃了用Anaconda,转而直接用pip
命令安装后可以正常使用。
Anaconda是一款第三方python模块管理工具,安装后就相当于安装了几十个第三方常用模块如numpy、pillow等,而且Anaconda会自带python并将其安装在自己的路径下,所以也不用担心与自己安装的冲突。在安装Anaconda时会有选项问你是否添加到环境变量中,上面显示的是不推荐但是后来出现问题后网上的提示是将Anaconda添加到环境变量中,此方法我试过在我这没用但是不确保一定没有作用。
在来说一下我的解决方案,直接运用命令行,在其中输入
pip install [模块名] //模块名可以在https://pypi.org中查询到
再将pycharm中的Python Interpreter修改为自己安装的Python即可(这是因为在前面用Anaconda时将其设置为了Anaconda自带的Python)。Python Interpreter的设置在Settings里面。
修改pip安装第三方模块的安装位置
首先我们打开命令行输入python -m site
可以看到以下输出:
sys.path = [
'C:\\Users\\Aengus',
'E:\\Software\\Python\\Python3.7.2x64\\python37.zip',
'E:\\Software\\Python\\Python3.7.2x64\\DLLs',
'E:\\Software\\Python\\Python3.7.2x64\\lib',
'E:\\Software\\Python\\Python3.7.2x64',
'E:\\Software\\Python\\Python3.7.2x64\\Lib\\site-packages',
]
USER_BASE: 'C:\\Program File(x86)\\Python\\Scripts' (doesn't exists)
USER_SITE: 'C:\\Program File(x86)\\Python\\Lib\\site-packages' (doesn't exists)
ENABLE_USER_SITE: True
我们需要注意的是USER_BASE
和USER_SITE
这两行,它们是模块的安装位置,我们找到我们现在用的Python版本(可以是自己安装的也可以是Anaconda自带的)的安装位置,找到Lib文件夹下的site.py文件,编辑其中USER_BASE
和USER_SITE
两个参数的内容即你要选择的第三方模块安装路径。推荐USER_BASE
在“你选择的路径/Scripts”文件夹而USER_SITE
在“你选择的路径/Lib/site-packages”文件夹。
如果不知道所用的Python安装位置,可以用
python -m site -help
输出的第一行即需要修改的site.py文件的位置。
另外说一句,在安装Anaconda时,除了有一个添加到系统环境变量的选项外,还有一个选项时指定为系统默认的Python版本(?),如果勾选这个选项的话那么需要修改的很有可能是Anaconda自带的Python。
修改pip安装源
如果只是安装某个模块用,可以直接用-i
指令,比如安装numpy,采用清华源:
pip install numpy -i https://pypi.tuna.tsinghua.edu.cn/simple/
如果想要修改默认设置,需要在C:/Users/用户名/pip文件夹下(如果没有pip文件夹就新建一个),新建pip.ini文件,内容如下:
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple //指定源
[install]
trusted-host=pypi.tuna.tsinghua.edu.cn
保存即可,目前国内源有以下几个:
http://pypi.douban.com/ 豆瓣
http://pypi.hustunique.com/ 华中理工大学
http://pypi.sdutlinux.org/ 山东理工大学
http://pypi.mirrors.ustc.edu.cn/ 中国科学技术大学
http://mirrors.aliyun.com/pypi/simple/ 阿里云
https://pypi.tuna.tsinghua.edu.cn/simple/ 清华大学
参考链接
https://www.jianshu.com/p/3621780417be
https://blog.csdn.net/C_chuxin/article/details/82962797
(本博客创建于2019-01-26)
- 0
- 0
-
分享