天天看点

Python入门(一)

1.编程语言:

    机器代码-》微码变成-》高级语言

    编译器[解释器]:把人类能够理解的,转换成机器能够理解的

        编译器:必须转换成二进制代码才能运行

        解释器:边解释[执行],边运行 

    python非常接近于人类的思维方式

    python也可以理解为脚本语言,但是比脚本语言的更强悍

        也适合开发大型程序,也是一种完备的语言

    python用来实现自动化运维:大材小用

    python有很多框架:web,Django等

    python缺陷:

        第一次执行比较慢{首次编译成字节码bytecode},第二次比较快

    执行效率比c,C++低,但是开发效率高

    pvm:python虚拟机

2.python执行过程:

                    PVM:整个过程需要借助于

    source code----->complier------>bytecode----->interpreter--->processor

        .py格式                        .pyc格式

    openstack是用python开发的

3.Python的实现

    CPython:原始,标准的实现方式

    Jython:用于Java语言集成的实现

    IronPYthon:用于与.NET框架集成的实现

    PyPy:python实现的python解释器

4.Python性能优化工具:

    Psyco:Python语言的一个扩展模块,可以及时对程序代码进行专业的算法优化

        可以在一定程度上提高程序的执行速度,尤其是在程序中有大量的循环操作时

        目前开发已经停止,由PyPy接替

    PyPY:是python实现的python解释器:PyPY的图标特别有意思,一条蟒蛇自己咬着自己的尾巴

        python语言的动态编译器,是Psyco的后继项目

        可以运行在linux,32,64,MacOSX,windows-32中

    Shed Skin:

        python编译器,能够将python代码转换成优化的C++代码

    Python使用方式:

        1.交互式python:输入命令python即可,只能一次执行

        2.python文件:将编写的程序保存至(.py)中方便多次运行,

            python的此类包含了一系列预编写好的语句的程序文件称作“模块”

            能够直接运行的模块文件通常称作脚本(即程序的顶层文件)

            例如vim,

            //每一个文件都叫做一个模块都可以被调用,

            //顶层文件--作为整个程序的执行入口

        3.或者使用IDE:集成开发环境

    python实现子模块中自我测试,而不是在顶层文件中调用实现测试

第一个python程序

    a.py

        #!/usr/bin/python             //shebang,即执行脚本时通知内容要启动的解释器

        import platform                //通过import导入一个python模块platform

        print platform.uname()        //打印platform模块的uname方法的执行结果

    chmod  +x a.py

    ./a.py 

    python  v2和v3之间的兼容性特别差

        python v2流行度高

    Python程序可以分解成模块、语句、表达式    和对象

        程序由模块构成

        模块包含语句

        语句包含表达式

        表达式建立并处理对象

            表达式是“某事”,而语句是“做某事(即指令)";

                例如,“3+4”是某事,“print 3+4”则是做某事

            语句的特性:它们改变了事物,例如,赋值语句改变了变量,print语句改变了屏幕输出等:

5.python对象

    Python中一切皆对象,变量也是一个对象

        面向过程:

            以指令为中心,由指令处理数据

            如何组织代码解决问题

        面向过程:{更是和解决复杂问题}

            以数据为中心,所有的处理代码都围绕数据展开

            如何设计数据结构组织数据,并提供对此类数据所允许处理操作

        python都支持

    python

        >>> import  platform

        >>> dir(platform) //查看platform的内置的参数

    假如要使用:

        python的更高版本,原有的2.6.6不能随便卸载,

        方法:

            1.编译安装新版本至特定路劲

            2.pyenv,可以install,uninstall,以及切换 //自己了解

            3.

        方法一:Python-2.7.6.tar.gz, ipython-1.2.1.tar.gz

    wget http://www.python.org/ftp/python/2.7.2/Python-2.7.2.tgz  

    wget http://archive.ipython.org/release/0.12/ipython-0.12.tar.gz

            解压,./conigure --help

            python依赖于 readline-devel,python交互模式回删可以用到//其他都要写

            ./configure --pfefix=/usr/local/python27

            make && make install 

            ipython必须使用python编译,ipython用于实现例如自动补全等功能

            /usr/local/python27/2.7/python2.7即可使用命令

            安装ipython

                解压并进入ipython目录

            /usr/local/python27/bin/python2.7  setup.py  build //编译 

            /usr/local/python27/bin/python2.7  setup.py  install //安装 

            链接命令:

                ln -sv /usr/local/python27/2.7  /usr/bin/python27

                ln -sv /usr/local/python27/ bin/ipython /usr/bin/ipython

            输入ipython命令测试

                测试补全功能

============================================================

    注意:千万不要动系统的默认python版本

    程序=数据结构+算法

    程序=指令+代码

        python最基本的数据结构是序列

        序列中每个元素被分配一个序号-即元素的位置,也成为索引,索引从0开始编号

        python包含6中内建的数据序列:列表,元祖,字符串,Unicode字符,buffer对象和Xrange对象

============================================================       

本文转自MT_IT51CTO博客,原文链接:http://blog.51cto.com/hmtk520/1952479,如需转载请自行联系原作者