这是我第一次写关于Python的博客,有什么崩瓜掉字的地方,还望各位海涵,我在别处博客平台一直在写Linux,虽然没有找到运维行业的工作,但还是挺向往的。但是你不会开发好像不太好,我也很想做的面面俱到,可谁知我的懒癌一直再犯,忽然感觉自己没救了。
其实我就是自律性TCL,没办法,想改懒得改,不过也要坚持。
1、Python介绍
好的,以上是扯了个犊子,我们现在开始讲解一下Python。
打开***工具,从某个搜索引擎获取到,Python是一门解释型的高级语言,属于通用编程语言,由发明者为Guido van Rossum,这哥们打发无聊的圣诞节所开发出来的一个新的语言,之所以选中Python作为程序的名字,是因为某个BBC电视剧他所钟爱,他现在是Python主要的开发者,担任BDFL,译为终身仁慈的独裁者。不过在2018-07-12时,不在担任了。
以上就是对于Python的简单介绍,有条件的话想办法详情请参考Google,因为国内的*度实在是靠不住。而后我们接下来说一下Python的优缺点。
优点:
-
- Python的定位是“优雅”、“明确”、“简单”,所以Python程序看上去总是简单易懂,初学者学Python,不但入门容易,而且将来深入下去,可以编写那些非常非常复杂的程序。
- 开发效率高,有非常强大的第三方库,基本上你想通过计算机实现任何功能,Python官方库里都有相应的模块进行支持,直接下载调用后,在基础库的基础上再进行开发,大大降低开发周期,避免重复造轮子。
- 高级语言——当你用Python语言编写程序的时候,你无需考虑诸如如何管理你的程序使用的内存一类的底层细节
- 可移植性——由于它的开源本质,Python已经被移植在许多平台上(经过改动使它能够工 作在不同平台上)。如果你小心地避免使用依赖于系统的特性,那么你的所有Python程序无需修改就几乎可以在市场上所有的系统平台上运行
- 可扩展性——如果你需要你的一段关键代码运行得更快或者希望某些算法不公开,你可以把你的部分程序用C或C++编写,然后在你的Python程序中使用它们。
- 可嵌入性——你可以把Python嵌入你的C/C++程序,从而向你的程序用户提供脚本功能。
缺点:
-
- 速度慢,Python 的运行速度相比C语言确实慢很多,跟JAVA相比也要慢一些,因此这也是很多所谓的大牛不屑于使用Python的主要原因,但其实这里所指的运行速度慢在大多数情况下用户是无法直接感知到的,必须借助测试工具才能体现出来,比如你用C运一个程序花了0.01s,用Python是0.1s,这样C语言直接比Python快了10倍,算是非常夸张了,但是你是无法直接通过肉眼感知的,因为一个正常人所能感知的时间最小单位是0.15-0.4s左右,哈哈。其实在大多数情况下Python已经完全可以满足你对程序速度的要求,除非你要写对速度要求极高的搜索引擎等,这种情况下,当然还是建议你用C去实现的。
- 代码不能加密,因为PYTHON是解释性语言,它的源码都是以名文形式存放的,不过我不认为这算是一个缺点,如果你的项目要求源代码必须是加密的,那你一开始就不应该用Python来去实现。
- 线程不能利用多CPU问题,这是Python被人诟病最多的一个缺点,GIL即全局解释器锁(Global Interpreter Lock),是计算机程序设计语言解释器用于同步线程的工具,使得任何时刻仅有一个线程在执行,Python的线程是操作系统的原生线程。在Linux上为pthread,在Windows上为Win thread,完全由操作系统调度线程的执行。一个python解释器进程内有一条主线程,以及多条用户程序的执行线程。即使在多核CPU平台上,由于GIL的存在,所以禁止多线程的并行执行。关于这个问题的折衷解决方法,在以后线程和进程章节里再进行详细探讨。
当然了,以上这些说话我也是摘抄的,大家理解即可,不过Python与Go的确是比较火的编程语言(虽然我没看编程排行榜)。
2、Python的安装
(1) Windows平台
我们打开Python官网,https://www.python.org/downloads/,选择任意一个稳定版本即可。本人选择的是3.6.5,点击Download按钮即可。
之后我们找到该软件的下载位置,打开安装包,开始安装。
看得出来共有两种选项,一种是立即安装,一种是自定义安装,立即安装可以理解为你啥都不用管,自己有默认的安装路径进行安装,但是你的C盘没有那么多的容量的话,本人建立你安装到别的磁盘上去。(我选择的是自定义安装)但无论如何都要将添加Python的PATH环境变量选中,前提你是懒癌(本人就是),然后我们进入到下一步骤。
以上都是默认,不要动就好了,点击Next。
之后点击安装,静静的等待着。如果安装安装成功的界面,那我恭喜你安装成功。以上是32位的安装包,64位的安装方式差不多是一样的,用户可自由选择。
那我们如何验证安装是否成功呢?我们打开Windows(开始)键+R键,输入cmd。默认是确定,直接点击回车。
就会看到模拟DOS的命令提示符。然后我们输出python -V命令,看到python的版本信息就代表你安装成功了。
(2) Linux平台安装
在Linux平台中,默认安装的是Python2版本的,需要注意的是,许多的系统组件都依赖于该版本,如果强制升级,则会导致某个系统组件不可用,我曾经就试过一次,导致yum就没有办法用了。
好在github上有个作者开发了一个pvenv的脚本,在自己的家目录下就能进行安装,彼此互不干扰,作为开发我们可以使用,该脚本来进行安装,那么对于环境准备就使用它来进行。
那么pyenv是个什么呢?这里有详细的介绍
pyenv:由bash脚本写出的命令程序,是一种与Linux自身管理版本共存的一种额外机制,能够解决除了系统中自身版本的问题,还能够进行其额外管理;
该命令实现的功能:
(1) 安装python解释器;
(2) 管理python版本;
(3) 管理python虚拟环境;
虚拟环境:相当于一个独立的版本,与Linux系统中已存在的python版本互不干扰且分别能够进行管理;
那么它的下载地址以及注意事项为:
pyenv下载地址: https://github.com/pyenv/pyenv 注意:事先需装git;
如何安装里面有个网址已经详细说明,我们一步步照这里去做就可以了。
如何安装: 安装地址: https://github.com/pyenv/pyenv-installer 注意:此安装比较危险,需经过审计之后使用; 由于为bash编写的程序,所以并不依赖其任何程序;
我们准备的平台为CentOS 7.4,你可以在管理员或者是在普通用户的身份下进行安装。
CentOS 7: 可在当前家目录进行安装,生成的目录为.pyenv; 安装:curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash
添加环境变量:
export PATH=/root/.pyenv/bin:$PATH
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"
好了,可以开始安装了,首先安装pyenv。
安装完成之后,会提示将以下指令写进.bash_profile文件中。这是一个隐藏文件,我们在家目录下打开该文件,而后将该环境变量进行添加,添加之后使用source命令让内核强制读取该文件。
$ vim .bash_profile export PATH="/home/liu/.pyenv/bin:$PATH" eval "$(pyenv init -)" eval "$(pyenv virtualenv-init -)"
$ source .bash_profile
好了,以上pyenv安装成功了,这也代表着使用Python虚拟环境确认好了,不过我们现在要使用yum命令来安装其开发环境。
$ sodu yum -y install Development Tools
对于pyenv的使用及选项我们来总结一下:
pyenv: pyenv <command> [<args>] command: commands:列出所有可用的pyenv命令; local: 查看或设置当前目录中的python版本; install: 安装某个版本;需要指定其版本号; uninstall: 卸载某个版本;需要指定其版本号; version: 查看系统当前使用的版本; versions: 列出所有的python版本信息; global:切换全局默认的python版本; 注意:不要使用该命令,会造成系统错误等问题;
对于在Linux中如何卸载的话很简单,只需要在家目录中删除.pyenv这个隐藏目录就好了。我们使用install子命令来进行安装,那么该子命令的使用方法为:
install: pyenv install <option> <version>
-l/--list:显示python程序所有可用版本; -f/--force:强制安装; -s/--skip-existing:跳过已安装的版本;
安装:
$ pyenv install 3.6.5
在这里需要注意一下,如果直接安装的话会有报错,需要依赖某个包,我们事先可以安装这些包,而后在安装。
$ sudo yum -y install openssl-devel bzip2-devel
之后我们可以进行Python的版本切换,以及pyenv的其它使用方法如下:
切换python: (1) 使用pvenv local VERSION 将系统中的python版本进行切换;
# pyenv local 3.6.5 (2) 查看家目录中是否存在.python-version文件,在文件中是否有其对应的安装版本; # cat .python-version 3.6.5 (3) 键入命令python-version命令查看当前系统的python版本; # python version (4) 建立虚拟环境(可选); pyenv virtualenv $bash_VERSION $name 切换回系统版本: # pyenv local system 注意:pyenv版本只在当前安装目录生效; 卸载某个版本: # pyenv uninstall VERSION 也可卸载其虚拟环境版本;
那么以上就是Python的安装方法,接下来需要准备的是开发环境的准备,安装方法赘述如下:
开发环境准备
1、pip的使用:
(1) 使用pyenv创建虚拟环境; pyenv virtualenv $version $name
(2) 切换版本;
pyenv local $name (2) 安装ipython; $ pip install ipython
(3) 安装完成之后,直接输入ipython;