https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000

一 简介

Python是一种相当高级的编程语言。

优点

1: 龟叔给Python的定位是“优雅”、“明确”、“简单”。所以Python程序看上去像对简单易懂。(不同的编程语言,干同一个活,编写的代码量,差距也很大。比如,完成同一个任务,C语言要写1000行代码,Java只需要写100行,而Python可能只要20行。)而 代码少的代价是运行速度慢.

2: python为我们提供了非常完善的基础代码库。覆盖了网络、文件、GUI、数据库、文本等大量内容。用Python开发,许多功能不必从零编写,直接使用现成的即可。

3: Python还有大量的第三方库,也就是别人开发的,供你直接使用的东西。当然,如果你开发的代码通过很好的封装,也可以作为第三方库给别人使用。

缺点

1: 运行速度慢,和C程序相比非常慢,因为Python是解释型语言。

代码在执行时会一行一行地翻译成CPU能理解的机器指令,这个翻译过程非常耗时,所以很慢。而C程序是运行前直接编译成CPU能执行的机器码,所以非常快。(所以,C语言是可以用来编写操作系统的贴近硬件的语言,C语言适合开发那些追求运行速度、充分发挥硬件性能的程序。而Python是用来编写应用程序的高级编程语言。大量的应用程序不需要这么快的运行速度,因为用户根本感觉不出来。)

2: 代码不能加密。

如果要发布你的Python程序,实际上就是发布源代码,这一点跟C语言不同,C语言不用发布源代码,只需要把编译后的机器码(也就是你在Windows上常见的xxx.exe文件)发布出去。要从机器码反推出C代码是不可能的,所以,凡是编译型的语言,都没有这个问题,而解释型的语言,则必须把源码发布出去。

python适合开发的应用类型:

首选是网络应用,包括网站、后台服务等等;

其次是许多日常需要的小工具,包括系统管理员需要的脚本任务等等;

另外就是把其他语言开发的程序再包装起来,方便使用。(许多大型网站就是用Python开发的,例如YouTube、Instagram,还有国内的豆瓣。很多大公司,包括Google、Yahoo等,甚至NASA(美国航空航天局)都大量地使用Python。)


二 python安装:

因为Python是跨平台的,它可以运行在Windows、Mac和各种Linux/Unix系统上。在Windows上写Python程序,放到Linux上也是能够运行的。目前,Python有两个版本,一个是2.x版,一个是3.x版,这两个版本是不兼容的。3.x版越来越普及。

在Mac上安装Python

如果你正在使用Mac,系统是OS X 10.8~10.10,那么系统自带的Python版本是2.7。要安装最新的Python 3.6,有两个方法:

方法一:从Python官网下载Python 3.6的安装程序(网速慢的同学请移步国内镜像),双击运行并安装;

方法二:如果安装了Homebrew,直接通过命令brew installpython3安装即可。

在Linux上安装Python

https://askubuntu.com/questions/865554/how-do-i-install-python-3-6-using-apt-get

Windows上安装Python

首先,根据你的Windows版本(64位还是32位)从Python的官方网站下载Python 3.6对应的64位安装程序32位安装程序(网速慢的同学请移步国内镜像)然后,运行下载的EXE安装包:特别要注意勾上Add Python 3.6 to PATH

交互界面

在Windows上运行Python时,请先启动命令行,然后运行python。

在Mac和Linux上运行Python时,请打开终端,然后运行python3。

三 Python解释器

当我们编写Python代码时,我们得到的是一个包含Python代码的以.py为扩展名的文本文件。要运行代码,就需要Python解释器去执行.py文件。Python的解释器很多,但使用最广泛的还是CPython。如果要和Java或.Net平台交互,最好的办法不是用Jython或IronPython,而是通过网络调用来交互,确保各程序之间的独立性。

CPython

当我们从Python官方网站下载并安装好Python 3.x后,我们就直接获得了一个官方版本的解释器:CPython。这个解释器是用C语言开发的,所以叫CPython。在命令行下运行python就是启动CPython解释器。CPython是使用最广的Python解释器。

IPython

IPython是基于CPython之上的一个交互式解释器,也就是说,IPython只是在交互方式上有所增强,但是执行Python代码的功能和CPython是完全一样的。CPython用>>>作为提示符,而IPython用In [序号]:作为提示符

PyPy

PyPy是另一个Python解释器,它的目标是执行速度。PyPy采用JIT技术,对Python代码进行动态编译(注意不是解释),所以可以显著提高Python代码的执行速度。绝大部分Python代码都可以在PyPy下运行,但是PyPy和CPython有一些是不同的,这就导致相同的Python代码在两种解释器下执行可能会有不同的结果。

Jython

Jython是运行在Java平台上的Python解释器,可以直接把Python代码编译成Java字节码执行.

IronPython

IronPython和Jython类似,只不过IronPython是运行在微软.Net平台上的Python解释器,可以直接把Python代码编译成.Net的字节码

Python IDE:

https://www.oschina.net/news/57468/best-python-ide-for-developers

http://www.runoob.com/python/python-ide.html

注意区分解释器和IDE: 例如pycharm是一个IDE,类似Python自带的IDLE、Spyder、Sublime等等,它们都只是编辑器,是用来编写代码的,而CPython、IPython、PyPy等,这些是解释器,是用来执行Python代码的,这两者是不一样的。

更多相关文章

  1. 计算机视觉相关代码片段(Python)
  2. 120行python代码解锁10000分微信跳一跳
  3. XGBoost中参数调优的完整指南(含Python-3.X代码)
  4. 求助:Python是否可以用一行代码来同时给变量赋值并打印变量的值
  5. 长安铃木经销商爬取(解析xml、post提交、python中使用js代码)
  6. 见证历史!Python或将取代VBA,成为Excel官方脚本语言!
  7. caffe中各语言预处理对应方式
  8. Python语言的特点、程序设计基本方法
  9. django-modeltranslation:如何知道该值是否在给定语言中定义?

随机推荐

  1. js基础应用-打字机,震动窗口
  2. JavaScript中当前脚本的URL
  3. javascript ArrayBuffer,它的用途是什么?
  4. javascript: 如何编写适合FireFox的对话
  5. 关于如何更好的监听元素属性的变化(转)
  6. JS正则表达式中有哪些特殊字符,这些特殊
  7. 使用jQuery排序,删除和追加元素在IE中不起
  8. js实现字符全排列算法
  9. [JavaScript] 将字符串数组转化为整型数
  10. 创建线程时设置CPU关联