python成长之路1——python介绍


一. python介绍
  • 作者:吉多
  • 应用领域:
  1. 数据分析: python对大数据的处理具有其优越性
  2. 系统编程:devops
  3. 组件集成:devops
  4. 网络服务:爬虫 cgi web等
  5. 图像处理:eg:汽车图片上的车牌可以用python处理覆盖掉
  6. 数值计算和科学计算: python可以替代matlab90%的功能
  • 为什么选择python:

      c是把代码编译成机器码执行,其他语言是把代码编译成字节码,虚拟机/解释器运行字节码转换成机器码再执行。这样,要写c语言的话就需要照顾到内存的管理,而对于其他高级语言来说,程序员就不关注内存的分配啦,内存管理的任务就交给了虚拟机或者解释器啦。这样就解放了程序员的相当一部分劳动力,提高了开发效率。而python作为高级语言的一种还具有以下优点:linux原生支持python,而且python的类库非常齐全

  • python的种类  
种类基于哪种语言解释器
Cpython c Cpython VM
Jpython java JVM
Ironpython c# CLR
Rubypython Ruby Ruby VM
pypy 直接把代码编译成机器码
  • python执行过程分析

        

       如上图,先把pyhon文件读入内存里,经过pyhton解释器的词法和语法分析,通过之后就会编译成字节码,再通过python解释器转换成机器码,就可以直接被机器识别运行啦。

  python解释器声明:

    #!/usr/bin/env  python

  • 编码介绍

       python解释器默认是按照Ascii码来读取代码的,Ascii码用一个8位二进制来表示一个字符,一共可以表示2**8=256个字符,它可以用来表示字母,数字和一些符号。但是如果要显示中文的话,Ascii就无能为力啦,这时就要考虑用别的字符编码。

  万国码(Unicode)一个字符最少需要16位的二进制来表示,这样一些只需要8位就可以表示的字符也要用16位来表示,就造成了资源的浪费。于是就又有了像UTF-8,gbk等对Unicode进行进一步优化的编码,他们表示一个字符最少需要8位。

  编码的声明:

  #-*- coding:utf-8 -*-  

  注意一点:

  上面的编码声明会对标准输入输出进行编码检测和转换,即:将stdin转换为python内部编码Unicode;在进行stdout输出前转换为系统编码再输出。由于linux和mac的系统编码是utf-8,而windows的系统编码是GBK,所以windows终端运行时乱码。解决如下:

  • 补充知识

        pyc:py的字节码,默认情况下,python会判断py文件是否修改,如果未修改,执行时会优先读取pyc

 
 
posted @ 2016-01-08 10:47  meitangyanyan  阅读(267)  评论(1编辑  收藏  举报