zoukankan      html  css  js  c++  java
  • Python基础

    一、安装

    请参考Python自动化中的python安装

    二、语言特性

    语言的对比

    C++java 编译语言 C语言没有标准库,C++标准库不够简洁和易读 内存管理由开发者负责
    Python、tcl、perl 解释型脚本语言,不需要编译 由内建的标准库,高级的数据结构

    内存管理由python解释器负责

    编译对比

    Java 程序--->编译成字节码--->解释器生成机器文件

    javac a.java

    java a

    C 程序--->编译成机器文件  
    Python 程序--->解释器生成字节码文件 python a.py

    由于整个Python语言从规范到解释器都是开源的,所以理论上只要水平够高,任何人都可以编写python解释器,来执行python代码,事实上,确实存在多种python解释器。

    Jython介绍:需要安装Jython

    1.Jython是纯Java实现的。Python的代码可以用Jython运行,只要没有用到扩展库。因为Jython实现了一个Python解析器,可以解析执行Python的代码。
    2.Jython在import 一个Python文件的时候,会编译生成.class文件,而不是.pyc文件。
     
    python程序变成java程序: jythonc a.py  生成 a.java
    CPython介绍(默认解释器):

    当我们从python官网下载并安装好python2.7后,就直接获得了一个官方版本的解释器,CPython,由于python是由C语言开发的,所以叫CPython,python在性能薄弱的地方可以用c语言编写,命令行下运行python就是启动CPython解释器,CPython用>>>作为提示符

    IPython介绍:

    执行python代码时和Cpython处理方式一样,只不过提示符用In[序号]:

    三、IDLE的使用

    交互式解释器,不保存输入的程序

    主提示符>>>    等待输入下一个语句

    次提示符...       等待输入当前语句的其他部分

    四、数字

    1/2 结果为0
    1/2.0 结果为0.5

    from __future__ import division

    1/2

    结果为0.5
    1//2 整除  0
    1.0//2.0 0.0
    1%2 求余1
    2.75%0.5 0.25
    2**3 2的3次幂=6
       

    长整型:普通整数不能大于2147483647(也不能小于-2147483648),如果需要更大的数,可以使用长整数,数字后面有一个L,长整数和普通整数可以混合使用

    十六进制:0xAF    八进制:010   (首位都是零)

    运算符:+    -    *    /      //     %     **

    比较运算符:<  <=     >       >=      ==     !=    

    逻辑运算符:and     or    not

    变量:变量名包括字母、数字、下划线,变量名不能以数字开头(装材料的锅碗瓢盆)

    表达式:某件事情(食谱的材料)  

    语句:做某件事情(烹饪的方法)

    x=1+2(x为变量,1+2为表达式,x=1+2为语句)

    不支持自增,自减

    数值内建运算符及内建函数:

    1.abs()

    2.divmod()

    3.pow()

    4.round()

    5.*

    6.//

    7.%   等等,列出了小部份

    比较内建函数的功能区别:

    函数int()直接截去小数部分,返回值为整数

    函数floor()得到最接近原数但小于原数的整数,返回值为浮点数

    函数round()得到最接近原数的整数(四舍五入),返回值为浮点数

    其他数值相关模块

    很多关于数字的函数都是内建函数,在__builtin__模块中,解释器自动导入,无需再写import语句,另外还有几个跟数字相关的模块,如下所示:

    1.decimal - 十进制浮点运算类

    2.array - 高效数值数组

    3.math/cmath - 标准C库数学运算符,常规运算在math中,复数运算在cmach中

    4.operator - 数字运算符的函数实现,例如tor.sub(m,n)等价于m-n

    5.random - 多种伪随机数生成器,函数randrange(),uniform(),random(),choice()

    五、获取用户输入

    x=input("x: ")   //如果输入的是字符串,则必须带双引号“daisy”

    y=raw_input("y: ")  //把输入的数据当成原始数据

    print xxx     //输出内容

    str()函数显示给人看的

    repr()函数显示给机器看的

    六、函数

    pow(2,3)内建函数

    七、模块

    __builtins__模块是在程序开始时自动被解释器导入的,可以看成适用任何一级python代码的全局变量

    import math  import 模块名

    math.foor(32.9)  模块.函数   使用这个模块的函数

    如果不存在不同模块中有相同的同名函数的情况下,可以使用函数名称   from math import sqt      sqt(9)  (如果还有一个模块也有sqt(),这种形式会导致引用同一个函数名,有重复的现象,不知道用哪个模块的函数了)

    _xxx 不用from module import *导入

    __xxx__ 系统定义名字

    __xxx 类中的私有变量,模块外或类外不可以使用

    八、运行脚本

    方法一、命令行:python test.py   (必须在test文件的路径下执行 或者 用test的全路径)(linux/windows)

    方法二、在程序的首行加入#!/usr/local/bin/python解释器的绝对路径,文件加入可执行权限,直接在命令行窗口输入 test.py即可运行(unix),双击test.py(windows)

    如果不想让窗口一闪而过,在程序的最后一行加入 raw_input("Press<enter>")

    方法三、用软件工具sublime或者eclipse运行

    九、注释

    #

    十、字符串

    字符串即一串字符,可用单引号或双引号标注

    转义字符,用反斜线标示

    用+拼接字符串

    把其他字符转换成字符串:

    1)repr(""),转换成合法的python表达式,给机器看的

    2)str(""),比上一个函数更容易阅读,给人看的

    3)··

    十一、其他

    1)如果需要写一个非常非常长的字符串,可能要跨很多行,那么,可以使用三个引号代替普通引号,print''' this is a very long string,'''也可以使用三个双引号"""long string""",这时可以在字符串中使用单引号和双引号,而不需要使用反斜线进行转义,同理适用于小括号,中括号,大括号。

    2)普通字符串需要换行时需要在最后一个字符后面加上反斜线,这个用法也适用于表达式和语句

    3)对于长路径,需要使用’c:\nowhere\file'  双反斜线在转义成单反斜线

    4)原始字符串以r开头,print r'C: owhere', 打印出的结果也是最原始的C: owhere,此时反斜线没有被转义

    十二、Unicode

    Python中的普通字符串在内部是以8位的ASCII码形式储存的,而Unicode字符串则储存为16位Unicode字符。u‘Hello ,world’

    十三、帮助

    1.使用help()内建函数

    help(函数名)    //得到相应的帮助信息

    十四、编程风格

    #/usr/bin/env python

    "this is a test module"

    import sys

    import os

    debug=True

    class FooClass(object):

         "foo class"

         pass

    def test():

          "test function"

          foo=FooClass()

    if __name__=='__main__':

           test()

    模块被导入时,__name__值为模块名字

    模块被执行执行时,__name__的值为__main__

  • 相关阅读:
    狗狗对主人的十句话
    微软提供正确卸载IE7的方法并恢复IE6
    c语言操作符的优先级
    linux 常用命令每日更新
    Visual Studio快捷键大全
    Opera将尽快发布补丁修复桌面浏览器漏洞 狼人:
    KILL杀毒软件重出江湖 公司股权全内资组成 狼人:
    图文:2010中国计算机网络安全年会华为展台 狼人:
    微软再次警告IE安全漏洞成为攻击目标 狼人:
    微软发布三月安全公告 两个补丁修补严重漏洞 狼人:
  • 原文地址:https://www.cnblogs.com/zz27zz/p/7359273.html
Copyright © 2011-2022 走看看