♥ 前 言
最近有小伙伴遇到了明明安装了 python 第三方库,但是在 pycharm 当中却导入不成功的问题。
一直以来,也有不少初学 python 的小伙伴,一不小心就跳进了虚拟环境和系统环境的【陷阱】中。
本文就基于此问题,来说说在 pycharm 当中如何使用系统环境、虚拟环境。
pycharm 当中,每一个项目在运行时,都需要指定一个 python 环境,比如 python3.7,python3.8 等。
1、你的项目是否用的虚拟环境?
在 pycharm 创建 project 时,需要选择 python 环境,默认是创建一个虚拟环境。
很多小伙伴,这一步没有去处理。自然而然的就会创建一个虚拟环境而不自知。
如下图所示:
点开之后,默认选中的虚拟环境。
虚拟环境创建成功之后,在项目下面会有一个 venv 目录。
如果你的项目下面有这个目录,那么说明你用的就是虚拟环境。
在 pycharm 当中,执行这个项目的代码时,会自动使用虚拟环境中的第三方库。
如果虚拟环境中没有,则会导入失败。
所以本文一开头遇到的问题,其实就是这个原因。
第三方库安装在本地 python 环境中,而运行代码时,使用的是虚拟环境中的。
对于 python 初学者,不要用虚拟环境,不要用虚拟环境,不要用虚拟环境!
先用本地系统环境好好学会 python,以后再考虑使用虚拟环境。
2、项目环境切换 - 如何从虚拟环境切换到本地环境
那么,已经不小心掉到了这个【陷阱】里的同学,想将项目从虚拟环境,切换到本地 python 环境,怎么办呢?
在【File -> Settings -> project:你的项目名称 -> python interpreter】中,可以指定当前项目的 python 环境。
点击 Show All 会显示所有的环境,如下图。如果环境路径中带有【venv】表示为虚拟环境
我们要选择本地的 python 环境,而不是虚拟环境。
环境切换成功之后,【External Libraries】下会显示本地 python 环境路径。
在 pycharm 当中运行时,就会使用本地环境去执行代码了。
在编写 python 代码时,导包也是从这个 python 环境下面去导。
3、pycharm 中,python 虚拟环境中第三方库管理
一般在开发 python 项目时,会使用虚拟环境。
虚拟环境的目的是,项目与项目之间的 python 环境隔离,项目所使用的 python 第三方库隔离。
如果你的项目当前正在虚拟环境当中,如何进入虚拟环境安装第三方库呢?
虚拟环境中安装和卸载第三方库的 2 种方式。
3.1)在 pycharm 的终端安装和卸载。
第一步:将 pycharm 的 Terminal 终端从 powershell 更换成 cmd.exe。(windows 环境)
这种情况下,我们需要手动执行命令,进入虚拟环境当中。
如果将 windows powershell 换成 cmd.exe,那么打开 Terminal 之后,就会自动进入虚拟环境当中。
这样就不用每次去切换了。
切换步骤:【File - Settings - Tools - Terminal - Shell path - 选择有 cmd.exe 的】
关掉之前打开的 Terminal,重新打开一个。就会自动切换到虚拟环境当中。
第二步:使用 pip 命令进行安装和卸载即可。
3.2)在项目的解释器配置界面安装和卸载第三方库
第一步:进入项目解释器配置界面。
操作步骤:【File - Settings - Project:你的项目名称 - Python Interpreter】
第二步:点 + 进入安装第三方库界面。
要卸载已安装的包
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0a5h9Eqc-1637307533087)(https://upload-images.jianshu.io/upload_images/11123661-5c3046b8b83fa1e4.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]
关于第三方库安装时很慢或者读取超时问题处理:
可以在安装第三方库时使用:
pip 安装命令为:
pip install XXXX -i http://mirrors.aliyun.com/pypi/simple --trusted-host mirrors.aliyun.com
结语
看完本文后是不是对这个吃饭的家伙有了不一样的认知啦,需要Python或者软件测试相关资料可以关注并私信我关键词“资料”免费获取。
版权说明 : 本文为转载文章, 版权归原作者所有 版权申明
原文链接 : https://blog.csdn.net/MC_XY/article/details/121424152
内容来源于网络,如有侵权,请联系作者删除!