Python入门(一)

发布时间:2019-09-21 10:51:44编辑:auto阅读(1599)

    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对象
    ============================================================      
           

关键字