前言

Python这几年热度逐渐上升,在很多高校Python也被列为通识课程,之所以如此受欢迎正是由于它的高效、简洁、易用、强大的第三方库等优点。如今在web开发、人工智能、大数据等方便应用非常广泛。不管你是否喜欢,不管怎么吐槽,如果想要从事人工智能,依然很难绕过Python,虽然这两年julia、Go被炒得也很热,但是在人工智能方面依然无法撼动Python的地位。

目录

  • Python解释器
  • IDE
  • pip代理
  • 虚拟环境

Python解释器

编程语言都会涉及编译器或者解释器,使用C/C++之类的编译性语言编写的程序,是需要从源文件转换成计算机使用的机器语言,经过链接器链接之后形成了二进制的可执行文件。运行该程序的时候,就可以把二进制程序从硬盘载入到内存中并运行。但是对于Python而言,python源码不需要编译成二进制代码,它可以直接从源代码运行程序。执行Python就需要用到Python解释器,按版本划分,Python解释系可以分为:

  • 2.x
  • 3.x

2.x版本目前已经不再进行维护,所以目前大多数项目都是使用3.x,我个人比较推荐用3.6.x版本,3.7.2是目前最新的版本,但是使用过程中会有这样那样的错误,会存在不兼容等问题,而3.5.x及以下的版本也存在一些问题:

  • 前缀f格式化字符串在3.6.x之后才开始支持
  • 安装工具包时3.5.x安装相关依赖容易失败

IDE

IDE(Integrated Development Environment, 集成开发环境),目前Python的IDE有很多,vs code、eclipse、atom、anaconda、IDEA等等,我个人不太推荐使用上述这些IDE,当然如果十分喜欢这些IDE也可以。对于开发Python,我只推荐pycharm和jupyter notebook两款。毋庸置疑,这是Python最强大的IDE。跳转、关联第三方库、速度、集成度、debug等等,可以说pycharm在Python开发中大多数方面表现的都很优秀,而vs code、eclipse、anaconda、atom只是在某一个或几个方面表现还可以。首先vs code关联第三方库、函数提示等方面很慢、服务器下容易卡顿,eclipse需要额外配置Python插件,anaconda集成太多包,有很多是自己用不到的,太臃肿了,atom没用过,不过也不感兴趣,所以,我觉得使用这些IDE还不如配置一下vim。如果说不喜欢每种语言安装一个IDE,喜欢像eclipse这样支持不同语言的IDE,我支持使用IDEA,这和pycharm属于同一家的产品,很多特性有共通之处。

pycharm优点:

  • 功能丰富
  • 提示速度快
  • 强大的书签和跳转功能
  • 高效的debug
  • 学生可以注册免费使用专业版

pip代理

pip是Python的包管理工具,无论是自己再cmd、终端下安装还是使用pycharm这些IDE安装包,都会调用pip。

pYTHON需要安装源代码包吗 python需要安装软件吗_python

默认的代理是从pypi上下载并安装包,速度会比较慢,所以需要配置一下pip的代理,这样速度会得到大大的提升,如图中所示,利用默认的下载速度之后几百k,配置代理后可达到2.1M/s。

虚拟环境

Python和其它编程语言一样,面临一个移植问题,如果想把开发完成的一个项目一直到其他电脑、节点或者把项目打成docker镜像,都需要对开发环境重新配置,需要重新安装项目中使用到的第三方工具包,如果一个个比对着安装必然会很麻烦,而我们用系统环境时pip安装的包都被安装进了Python路径下site-packages里面,如果生成requirement.txt时也会把site-packages下的所有包都会包含进去,这就是为什么使用到虚拟环境的原因,能够针对不同项目创建一个独立的环境,这样便于后期的移植。

Python虚拟环境管理工具主要有以下两种:

  • virtualenv
  • pipenv

上述两个工具都可以使用pip进行安装:

pip install virtualenv
pip install pipenv

virtualenv和pipenv该怎么选择?我觉得这根据个人喜好。

virtualenv更加悠久,老化一些