Dive into python第三章内置数据类型总结

来源:互联网 发布:淘宝保证金诈骗 编辑:程序博客网 时间:2024/05/22 15:15

总体来说python内置数据类型是比较简单的,但是还是有些细节需要注意:

一. 字典

1. 字典是无序的,想要对它排序需要对key进行操作。

但是有一种方法可以对value排序,需要用到sorted()函数:

>>> dict={'a':1,'b':33,'c':35,'d':22}
>>> for k,v in sorted(dict.items(),key=lambda dict:dict[1]):   # 先将dict转成tuples, 然后用dict的value作为关键字比较。
print "%s: %s" %(k,v)    # 返回的还是string,想要转成dict需要用from collections import OrderedDicta: 1d: 22b: 33c: 35


2. 字典的key是不可改变的,所以只能有数字,字符串和不可改变的元组(比如数字元组,字符元组)作为key。


二.列表

1. 列表是有序的,但是不是集合,所以可以重复出现同一个元素

2. I[:] 将创造一个列表l的复制。
3. 列表的append函数可以添加任何数据到表中。

4. 用 in 可以检验列表中是否有某个元素。

5. l.remove()用于去除某个元素, I.pop()能显示去除列表最后的某个元素。

6. l.extend(['aa']) 比 l + [''aa"] 快速,因为列表+会生成一个新的列表。

7. join函数只用于list of strings,把字符列表转成字符串。

8. l.split() 函数将一个字符串分解成list of strings。 有一个可选参数,用来指定分解的次数。

>>> s'server=mpilgrim;uid=sa;database=master;pwd=secret'>>> s.split(";", 1)['server=mpilgrim', 'uid=sa;database=master;pwd=secret']


三. 元组

1. 元组比列表快速,特别适用于需要历遍一组不变的数据时。

2. 元组适用于字符串格式化。

3. 可以一个元组只有一个值(a, )

print "Users connected: %d" % (userCount, )

4. 列表综合可以把list of tuples 转成 list of string 

>>> l=['%s:%s'%(k,v) for (k,v) in dict.items()] # items()返回 list of tuples>>> l['ee:1', 'ww:2']


总结,书中大致讲了这些我认为会忽视的点,还是需要多多练习才能体会。


0 0