} } }

    Python办事器开辟一:python根蒂根基

    添加时间:2013-5-14 点击量:

    Python(蟒蛇)是一种动态申明型的编程说话。Python可以在Windows、UNIX、MAC等多种操纵体系上应用,也可以在Java、.NET开辟平台上应用。


    【特点】


    1 Python应用C说话开辟,然则Python不再有C说话中的指针等错杂的数据类型。


    2 Python具有很强的面向对象特点,并且简化了面向对象的实现。它打消了保护类型、抽象类、接口等面向对象的元素。


    3 Python代码块应用空格或制表符缩进的体式格式分隔代码。


    4 Python仅有31个保存字,并且没有分号、begin、end等标识表记标帜。


    5 Python是强类型说话,变量创建后会对应一种数据类型,呈如今同一表达式中的不合类型的变量须要做类型转换。



    【搭建开辟景象】


    1 可以到www.python.org安装包,然后经由过程configure、make、make install进行安装。


    2 也可以到www.activestate.com去ActivePython组件包。(ActivePython是对Python核心和常用模块的二进制包装,它是ActiveState公司公布的Python开辟景象。ActivePython使得Python的安装加倍轻易,并且可以应用在各类操纵体系上。ActivePython包含了一些常用的Python扩大,以及Windows景象的编程接口)。对ActivePython来说,若是你是windows用户,msi包安装即可;若是你是Unix用户,tar.gz包直接解压即可。


    3 Python的IDE,包含PythonWin、Eclipse+PyDev插件、Komodo、EditPlus



    【hello world】


    1 创建hello.py


    2 编写法度:



    if __name__ == __main__:
    
    print hello world


    3 运行法度:


    python ./hello.py



    【注释】


    1 无论是行注释还是段注释,均以#加一个空格来注释。


    2 若是须要在代码中应用中文注释,必须在python文件的最前面加上如释申明:



     - - coding: UTF-8 - - 


    3 如释用于指定申明器



    ! /usr/bin/python 



    【文件类型】


    1 Python的文件类型分为3种,即源代码、字节代码和优化代码。这些都可以直接运行,不须要进行编译或连接。


    2 源代码以.py为扩大名,由python来负责申明;


    3 源文件经过编译后生成扩大名为.pyc的文件,即编译过的字节文件。这种文件不克不及应用文本编辑器批改。pyc文件是和平台无关的,可以在大项目组操纵体系上运行。如下语句可以用来产生pyc文件:



    import py_compile  
    
    py_compile.compile(‘hello.py’)


    4 经过优化的源文件会以.pyo为后缀,即优化代码。它也不克不及直接用文本编辑器批改,如下号令可用来生成pyo文件:



    python -O -m py_complie hello.py 


    【变量】


    1 python中的变量不须要声明,变量的赋值操纵即使变量声明和定义的过程。


    2 python中一次新的赋值,将创建一个新的变量。即使变量的名称雷同,变量的标识并不雷同。用id()函数可以获取变量标识:



    x = 1 
    
    print id(x)
    x
    = 2
    print id(x)


    3 若是变量没有赋值,则python认为该变量不存在


    4 在函数之外定义的变量都可以称为全局变量。全局变量可以被文件内部的任何函数和外部文件接见。


    5 全局变量建议在文件的开首定义。


    6 也可以把全局变量放到一个专门的文件中,然后经由过程import来引用:


    gl.py文件中内容如下:



    _a = 1 
    
    _b
    = 2


    use_global.py中引用全局变量:



    
    
    import gl
    
    def fun:
    print gl._a
    print gl._b
    fun



    【常量】


    python中没有供给定义常量的保存字。可以本身定义一个常量类来实现常量的功能。



    class _const:
    
    class ConstError(TypeError): pass
    def __setattr__(self,name,vlaue):
    if self.__dict__.has_key(name):
    raise self.ConstError, “Can’t rebind const(%s)”%name
    self.__dict__[name]=value
    import sys
    sys.modules[__name__]=_const()


      


    【数据类型】


    1 python的数字类型分为整型、长整型、浮点型、布尔型、复数类型。


    2 python没有字符类型


    3 python内部没有通俗类型,任何类型都是对象。


    4 若是须要查看变量的类型,可以应用type类,该类可以返回变量的类型或创建一个新的类型。


    5 python有3种默示字符串类型的体式格式,即单引号、双引号、三引号。单引号和双引号的感化是雷同的。python法度员更喜好用单引号,C/Java法度员则习惯应用双引号默示字符串。三引号中可以输入单引号、双引号或换行等字符。



    【运算符和表达式】


    1 python不支撑自增运算符和自减运算符。例如i++/i–是错误的,但i+=1是可以的。


    2 1/2在python2.5之前会便是0.5,在python2.5之后会便是0。


    3 不便是为!=或<>


    4 便是用==默示


    5 逻辑表达式中and默示逻辑与,or默示逻辑或,not默示逻辑非


    【把握语句】


    1 前提语句:



    if (表达式) :
    
    语句1
    else :
    语句2



    2 前提语句:



    if (表达式) :
    
    语句1
    elif (表达式) :
    语句2

    elif (表达式) :
    语句n
    else :
    语句m



    3 前提嵌套:



    if (表达式1) :
    
    if (表达式2) :
    语句1
    elif (表达式3) :
    语句2

    else:
    语句3
    elif (表达式n) :

    else :



    4 python本身没有switch语句。


    5 轮回语句:



    while(表达式) :  
    

    else :


    6 轮回语句:



    for 变量 in 凑集 :  
    

    else :


    7 python不支撑类似c的for(i=0;i<5;i++)如许的轮回语句,但可以借助range模仿:



    for x in range(0,5,2):  
    
      
    print x



    【数组相干】


    1 元组(tuple):python中一种内置的数据布局。元组由不合的元素构成,每个元素可以存储不合类型的数据,如字符串、数字甚至元素。元组是写保护的,即元组创建之后不克不及再批改。元组往往代表一行数据,而元组中的元素代表不合的数据项。可以把元组看做不成批改的数组。创建元组示例如下:



    tuple_name=(“apple”,”banana”,”grape”,”orange”)



    2 列表(list):列表和元组类似,也由一组元素构成,列表可以实现添加、删除和查找操纵,元素的值可以被批改。列表是传统意义上的数组。列表创建示例如下:



    list_name=[“apple”,”banana”,”grage”,”orange”] 


    可以应用append办法来在尾部追加元素,应用remove来删除元素。


    3 字典(dictionary):由键-值对构成的凑集,字典中的值经由过程键来引用。键和值之间用冒号隔开,键-值对之间用逗号隔开,并且被包含在一对花括号中。创建示例如下:



    dict={“a”:”apple”, “b”:”banana”, “g”:”grage”, “o”:”orange”} 


    4 序列:序列是具有索引和切片才能的凑集。元组、列表和字符串都属于序列。



    【函数相干】


    1 python法度由包(package)、模块(module)和函数构成。包是由一系列模块构成的凑集。模块是处理惩罚某一类题目的函数和类的凑集。


    2 包就是一个完成特定任务的对象箱。


    3 包必须含有一个__init__.py文件,它用于标识当前文件夹是一个包。


    4 python的法度是由一个个模块构成的。模块把一组相干的函数或代码组织到一个文件中,一个文件便是一个模块。模块由代码、函数和类构成。导入模块应用import语句。


    5 包的感化是实现法度的重用。


    6 函数是一段可以反复多次调用的代码,函数定义示例如下:



    def arithmetic(x,y,operator):
    
    result
    ={
    +”:x+y,
    -“:x-y,
    ”:xy,
    /”:x/y
    }



    7 函数返回值可以用return来把握。



    【字符串相干】


    1 格局化输出:



    format=”%s%d” % (str1,num)  
    
    print format


    2 用+进行字符串的归并:



    str1=”hello”  
    
    str2
    =”world”
    result
    =str1+str2


    3 字符串截取可以经由过程索引/切片,也可以经由过程split函数。


    4 经由过程切片截取字符串:



    word=”world”  
    
    print word[0:3]



    5 python应用==和!=来进行字符串斗劲。若是斗劲的两个变量的类型不雷同,那么成果必定为不合。


    【文件处理惩罚】


    1 简单处理惩罚文件:



    context=”hello,world”  
    
    f
    =file(“hello.txt”,’w’)
    f.write(context);
    f.close()


    2 读取文件可以应用readline()函数、readlines()函数和read函数。


    3 写入文件可以应用write()、writelines()函数



    【对象和类】


    1 python用class保存字来定义一个类,类名的首字符要大写。定义类示例:



    class Fruit:
    
    def grow(self):
    print “Fruit grow”



    2 当一个对象被创建后,包含了三方面的特点,即对象的句柄、属性和办法。创建对象的办法:



    fruit = Fruit()  
    
    fruit.grow()


    3 python没有保护类型的润饰符


    4 类的办法也分为公有办法和私有办法。私有函数不克不及被该类之外的函数调用,私有的办法也不克不及被外部的类或函数调用。


    5 python应用函数”staticmethod()“或”@ staticmethod“指令的办法把通俗的函数转换为静态办法。静态办法相当于全局函数。


    6 python的机关函数名为__init__,析构函数名为__del__


    7 持续的应用办法:



    class Apple(Fruit):
    
    def




    【连接mysql】


    1 用MySQLdb模块操纵MySQL数据库很是便利。示例代码如下:



    import os, sys
    
    import MySQLdb
    try:
    conn MySQLdb.connect(host
    =’localhost’,user=’root’,passwd=’’,db=’address’
    except Exception,e:
    print e
    sys.exit()
    cursor
    =conn.cursor()
    sql
    =’ into address(name, address) values(%s, %s)’
    value
    =((“zhangsan”,”haidian”),(“lisi”,”haidian”))
    try
    cursor.executemany(sql,values)
    except Exception, e:
    print e
    sql
    =” address”
    cursor.execute(sql)
    data
    =cursor.fetchall()
    if data
    for x in data:
    print x[0],x[1]
    cursor.close()
    conn.close()



    分享到: