Python基础知识_学习笔记


python包含6中内建的序列:

    常用的两种类型为:列表和元祖

    字符串、Unicode字符串、buffer对象、xrange对象

 列表和元祖的区别:

    列表可以修改,而元祖不能修改该


input:需要自己定义输入内容的格式

raw_input:会将任何输入的内容转化为字符串


函数:

    pow:可以求数值的幂                                    #pow(2,3)

    abs:可以求数的绝对值                                 #abs(-10)

    round:可以给定精度四舍五入数值                             #round(3.456,1)

模块:是一种增强python功能的扩展

    math:数学运算的函数

        floor:实现去一法                                       #math.floor(3.9)

        ceil:实现进一法                                         #math.ceil(3.4)

        sqrt:实现开平方                                        #math.sqrt(9)

    cmath:计算虚数

        sqrt:实现虚数的开平方                            #cmath.sqrt(-9)

将数字转译为字符串的方法:

    repr:可以将数字转译成字符串格式的           #repr(23)或`23`

    str:可以将数值转译为字符串格式

原始字符串:在原始字符串中输入的每个字符都会与书写的方式保持一致

    print r"let\'s go"        会原样输出为: let\'s go

序列:

  列表:

    索引:序列中的所有元素都是有编号的,从0开始递增。

    分片:通过冒号相隔的两个索引来实现访问一定范围的元素


    max:判断序列中最大的数值                      #max([1,2,3,4)]

    min:判断序列中的最小的数值                   #min([1,2,3,4])

    len:判断序列的长度                                     #len([1,2,3,4])

    del:删除列表中的元素                                 #del a[-1]

    append:追加列表                                         #a=append(b)

    count:统计元素个数                                     #a.count(1)

    extend:扩展列表                                           #a.extend(b)

    index:找出某个值第一个匹配项的索引      #a.index(2)

    insert:将指定数值插入到指定位置              #a.insert(2,'ma')

    pop:可以一处列表中的元素,默认是最后一个,可以指定            #a.pop()|a.pop(1)

    remove:移除指定的匹配到的第一个元素   #a.remove('ma')

    reverse:将列表中的元素反向存储               #a.reverse()    

    sort:为列表排列顺序                                      #a.sort()

    cmp:比较两个数值,返回0、1、-1             #cmp(1,2)

  元祖:

    tuple:类似于数列中的list函数                        #tuple('ma')|tuple([1,2,3])

    

字符串:

    a=1.23

    b='long'

    print "num is %d"%a

    print "num is %.2f"%a

    print "name is %s"%b

    print "name is %s  num is %d float is %.2f"%(b,a,a)

        %10d:表示输出的字段长度为10

        %010:表示输出的字段长度为10,如果不够可以使用0补齐

        %.2f:表示精确位数为2位小数

        %-10d:表示向左对齐,不够的可以使用空格补充

    string方法:

        find:可以在一个较长的字符中查找指定的字符串,返回字符串最左边的的索引位置,如果没有搜到

                    返回0

            'This is a example'.find('example')                结果:10

            'This is a example'.find('test')                         结果:-1

            'This is a example'.find('example',0,10)        结果:-1

        join:用来在字符串队列中添加元素

            a='test'

            ':'.join(a)            会在字符串中每个字符间添加:

        lower:返回字符串的小写

            a='THIS IS A EXAMPLE'

            a.lower()

        upper:返回字符串的大写

            a='This is a example'

            a.upper()

        title:将字符串转化为标题字符串

            a='this is a example'

            a.title()

        replace:替换匹配到的字符串

            a='This is example '

            a.replace('is','is not')

        split:根据给定的分割符来分割字符串

            a='/etc/init.d/rc.local'

            a.split('/')

        strip: 去除字符串两侧的空格

            a='      This is a example    '

            a.strip()


字典:

    通过查找某个特定的词语(键),从而找到他的定义(值)

    字典中的键是唯一的,而值并不唯一

    dict函数:

        items=[('name','test'),('age',14)]

        d=dict(items)

        d['name']

        len(d)        返回字典d中的键-值的数量

        d[k]            返回关联到键上的值

        d[k]=v        将值v关联到k键上

        del d[k]      删除键为k的项

        k in d          判断字典d中是否含有键k的项 

            Example For:

                people={'test1':{'phone':123,'addr':'beijing'},'test2:{'phone',12345,'addr':'tianjing'}}

                people['test1]['phone']

                

                html='''

                    <head>%(head)s</head>

                    <title>%(title)s</title>

                    <body>%(body)s</body>

                    '''

                data={'head':'This is example','title':'This is a example','body':'Hello World!'}

                print html%data

        clear:清除字典中的所有项,可以同时清除负值的其他字典,相当于递归清除

            items.clear()

        copy:复制字典,当副本中替换值的时候,原字典不会受影响,但是如果修改了某个值,那么原

                    字典会受影响(类似与删除某个项中的值)

        deepcopy:深度复制,副本的修改不会影响原来的字典

         from copy import deepcopy

                items.deepcopy()

        fromkeys:使用给定的键建立新的字典,每个键默认的对应值为None

            {}.fromkeys(['name','age'])

        get:获取字典中键的值,如果没有不会有报错

            items.get('name')

        has_key:判断字典中是否含有对应的键,类似于k in b,但在python3.0中就没有这个函数了。

            a.has_key('name')

        items:将字典以列表的形式显示

            a.items()

        iteritems:类似与items,但返回的是一个迭代对象

            b=a.iteritems()

        keys:将字典中的键以列表的形式显示

        iterkeys:类似于keys,只不过是生成一个迭代对象

        pop:将给定键的值删除掉

            a.pop('name')

        popitem:随机的从字典中删除项

            a.popitem()

        setdefault:可以给没有值的键设定默认的值,如果一个键有值会返回对应的键值

            a.setdefault('name','test')

        update:更新字典中的项,如果老字典与新字典有重复,回见重复的项覆盖掉

            a.update(b)

        values:会以列表的形式返回字典中的值

            a.values()

        itervalues:会返回字典中值的迭代结果,可以被调用

            a.itervalues()