python安装与环境配置

194 阅读8分钟
插入了我在配置环境的时候遇到的一些问题,记录一下当时候遇到的坑。

1. 编译型语言与解释型语言

首先要知道,python是解释型语言,而不是编译型语言(编译型语言最典型的就是C语言了)。 这两者有什么区别呢?

1. 编译型语言

编译型语言是相对解释型语言而存在的,编译型语言在执行代码的过程中,先将源码编译生成机器语言,再由机器运行机器语言。将源码编译成机器码就是编译器了,这个过程就称为编译(过程)。 计算机在执行C语言的时候,先将C语言源码利用编译器编译成机器码(二进制),计算机再执行编译后生成的机器语言文件,运行时不再需要重新编译,直接使用编译后的结果即可,这样程序的执行效率好,但是依赖编译器(解释型语言也依赖解释器啊)。 编译型语言写的程序执行之前,需要一个专门的编译过程,把程序编译成为机器语言的文件,比如exe文件,以后要运行的话就不用重新翻译了,直接使用编译的结果就行了(exe文件),因为翻译只做了一次,运行时不需要翻译,所以编译型语言的程序执行效率高。

以上内容来自百度百科编译型语言

2. 解释型语言

解释型语言的源代码不是直接翻译成机器语言(二进制),而是先翻译成中间代码,再由解释器对中间代码进行解释运行。python、JavaScript等都是解释型语言。 程序不需要编译,程序在运行时才翻译成机器语言,每执行一次都要翻译一次。因此效率比较低。比如Basic语言,专门有一个解释器能够直接执行Basic程 序,每个语句都是执行的时候才翻译。也就是说,这句代码是否有问题只有执行到这句代码的时候解释器才会报错,而编译型语言则是先全部源码编译,如果编译时代码报错,则无法编译下去,直到代码全部没有问题才会完成编译。

以上内容来自百度百科解释型语言

2. python的环境配置

既然知道了python是解释型语言,那么就是要安装python的解释器了。 python官网提供了解释器是CPython解释器,官方推荐。除此之外,还有Java、python写的解释器,等等。

python的环境的配置主要有3种:

  1. 直接安装官方提供的python解释器
  2. 在第一种的情况下安装python的虚拟环境
  3. 使用第三方anaconda安装python环境

1. 安装官方python

这个比较简单,直接安装python官方提供的可执行文件即可。 官网截图 如何下载安装?这里只说明Windows下的python3安装方法,这里有两种

  1. 在Microsoft Store中搜索python
  2. 在官网下载安装 这里就直接在主页面下载了。

下载完成后双击开始安装,(注意这里下载的版本是32位的,64位的需要另外下载)

如何下载其他历史版本以及64位版本 点击官网首页的download->Windows进去Windows专区,里面有很多历史版本 这里进去之后就是这个界面了,可以看到有很多版本,包括稳定版以及预发布版 从图上可以看到,每一个版本都至少有6个下载链接可以点,而且名称都不太一样。 个人建议安装Windows x86-64 executable installer这个64位版本。 `

安装 后续直接下一步即可。

安装完成后,打开cmd输入python看是否可以打开python,可以打开则表示安装成功。出现下面的界面即可,可能与你们按照上面的方法安装结果不太一样,这里是我之前安装的python3.7的64位版本。出现python的版本号就没问题了。

2. 安装python虚拟环境

这里可以参考我的另一篇博客 blog.csdn.net/weixin_4297…

首先需要安装python虚拟环境所需要的库

# 首先需要安装三个库
pip install virtualenv
pip install virtualenv-clone
# virtualenvwrapper  # linux 下要装这个
pip install virtualenvwrapper-win # Windows下则是这个,我两个都装了

装完上面的python的库之后,还需要在Windows下配置以下环境变量

这里需要注意的一点就是:环境变量需要新建一个,环境变量的路径随意,容易知道在哪就好,因为创建的虚拟环境都会放在这个文件夹地下,而且进入虚拟环境需要在当前文件夹里面(这个后面会细说)(这里的说法有点问题,其实不完全需要在环境的文件夹里,用cmd可以在任何地方进入python的虚拟环境,而powershell则需要进入虚拟环境文件夹里进入,但是如果不是刚刚创建的虚拟环境powershell还进不去,个人建议还是用cmd好了。)

这里需要纠正的一点就是,创建后的虚拟环境不一定会放在配置的文件夹中,虚拟环境保存的文件夹完全取决于你在哪个文件夹创建虚拟环境,如果我直接打开cmd创建虚拟环境,就会在当前用户的文件夹中创建虚拟环境了。这点还是需要注意的,如果想要规定位置存放虚拟环境,还是需要进入到特定的文件夹中创建虚拟环境,(Linux好像没有这个问题)。


安装完成后尝试创建虚拟环境

上面已经把环境准备好了,那么现在就来创建python的虚拟环境把

python虚拟环境的命令:

在cmd下面执行以下命令

workon  # 查看当前已有的虚拟环境,因为我之前已经创建过了,所以会有显示
C:\Users\Administrator>workon

Pass a name to activate one of the following virtualenvs:
==============================================================================
directory
pythonenv
# 按照上面的提示(Pass a name to activate one of the following virtualenvs:)使用workon进入虚拟环境
C:\Users\Administrator>workon pythonenv
(pythonenv) C:\Users\Administrator>  # 现在已经进入虚拟环境了,前面的(pythonenv)就表示是在虚拟环境里面了。

C:\Users\Administrator>workon pythonenv
(pythonenv) C:\Users\Administrator>pip list
Package    Version
---------- -------
pip        19.2.1
setuptools 41.0.1
wheel      0.33.4
## 使用deactivate退出虚拟环境
(pythonenv) C:\Users\Administrator>deactivate
C:\Users\Administrator>

下面我们来说一下powershell的坑点(我遇到的坑点)

我进入到已经创建好的虚拟环境的文件夹内

那么我们现在需要在powershell中进入我之前创建的虚拟环境

在powershell中不能使用workon命令进入虚拟环境,需要在scripts文件夹里面运行activate文件才能进入

运行activate文件之后,会报错。

百度了一下之后,发现还需要再执行以下这个命令Set-ExecutionPolicy RemoteSigned

这个命令需要在powershell的管理员下执行

输入Y,回车,关闭就可以了。

关闭原来的powershell,重新打开一个,输入activate,运行,报错。emmm

我怀疑我在执行Set-ExecutionPolicy RemoteSigned时候不对,重新来了一遍 ,还是不行。cmd可以进去的。

然后去网上找解决办法了。。。找到这个,跟我的错误一模一样。

在楼下找到了回答,几个人的回答都是一样的

我试了一下

卧槽,感谢这位老哥。

powershell也太坑了吧。cmd好用很多。。。


别高兴太早了,当你关闭了这个powershell之后,重新打开,想要重新进入原来操作的虚拟环境,发现使用activate还是不行。我。。。

我按照上面的步骤重新操作了一遍

最后发现,而且还是需要使用.\activate才能进入,单纯的activate是进不去的。。

每次都要这么来好麻烦,还是用cmd好了

powershell会出现这个问题可能是我没有配置啥东西,这里可以在power shell中输入cmd进入cmd就没啥问题了。。。

3. 安装anaconda

anaconda是第三方提供的,将python解释器以及常用的python库集成起来一起安装,另外还提供了自行开发的conda的python虚拟环境(比workon好用)。 anaconda官网

安装可以参考知乎的这篇,详细很多,包括介绍、安装以及使用zhuanlan.zhihu.com/p/32925500

因为anaconda包括了很多第三方库,所以安装后回占用硬盘很大的空间,这里anaconda就提供了一个miniconda,如果只是想要安装conda作为环境管理可以考虑miniconda。 miniconda下载