Python 数据类型及操作

Python 数据类型与对应的操作

1、list

定义/赋值:classmates=['emma','0804']

               用函数生成如:a=list(range(1,11))

               列表生产式:[x*x for x in range(1,11) if x%2==0] [m+n for m in 'abc' for n in 'xyz']

note:用len()函数获得list元素个数;

         list的元素也可以是list 如:a=[1,2]  b=[3,a,4]  b[1][0]:1 

查询访问操作(索引):classmates[0], classmates[-1]

追加元素: classmates.append('zhu')

插入元素:classmates.insert(1,'jack')

删除元素:classmates.pop(1) #pop()为删除末尾元素

修改元素(直接赋值):classmates[1]='sara'

切片:classmates[0:1] classmates[-2:-1] classmates[::2]#每两个取一个

Note:字符串'xxx'也可以看成是一种list,每个元素就是一个字符。因此,字符串也可以用切片操作,只是操作结果仍是字符串

2.tuple #元组 

定义:t=(1,2)

Note:只有一个元素的tuple的定义:t(1,)

特性:一旦初始化就不可更改,故无append或insert不可用

        其他特性类似list

3、dic #字典

特性:使用键-值(key-value)存储,具有较快的查询速度(以空间换时间) key的对象不可变 通过key计算位置的算法为哈希算法

定义:d={'emma':90, 'eff':75, 'bob':70}

操作:赋值 d['emma']=60 

   判断key是否存在dic中  'emma' in d  或 d.get('emma', -1#可自定义)

        删除key d.pop('bob')

        get:get(key, default=None)

4. set

特性:与dict类似 但是不存储value, key值不重复

定义:s=set([1,2,3])

操作:添加元素 s.add(4)

         删除元素 s.remove(4)

        交集或并集:s1&s2 s1 | s2 #s1 s2已预先定义 

5、函数作为返回值

example:def lazy_sum(*args):
    def sum():
        ax = 0
        for n in args:
            ax = ax + n
        return ax
    return sum
f=lazy_sum(1,3,5,7,9)

f

<function lazy_sum.<locals>.sum at 0x101c6ed90>

 

posted @ 2017-04-26 21:57  emma0804  阅读(127)  评论(0编辑  收藏  举报