码迷,mamicode.com
首页 > 编程语言 > 详细

python学习之列表和字典

时间:2015-12-29 22:47:08      阅读:249      评论:0      收藏:0      [点我收藏+]

标签:


列表

基本操作
>>>len([1,3,4])
3

>>>[1,2,3]+[4,5,6]    +号两边必须是相同类型
[1,2,3,4,5,6]

>>>[‘ni!‘]*4
[‘ni!‘,‘ni!‘,‘ni!‘,‘ni!‘]

>>>str([1,2])+"34"
‘[1,2]34‘

>>>[1,2]+list("34")
[1,2,3,4]


列表迭代和解析
>>>3 in [1,2,3]
true

>>>for x in [1,2,3]:
    print (x,end=‘ ‘);
1,2,3
>>> res = [c *4 for c in ‘spam‘];
>>>res
[‘ssss‘,‘pppp‘,‘aaaa‘,‘mmmm‘]

索引 分片和矩阵

>>>l = [‘aa‘,‘bb‘,‘cc‘]
>>>l[2]
‘cc‘
>>>l[-2]
‘bb‘
>>>l[1:]
[‘bb‘,‘cc‘]


列表是可变的,他们支持原处改变列表对象的操作

索引与分片的赋值

>>>l = [‘aa‘,‘bb‘,‘cc‘]
>>>l[1]=‘dd‘
>>>l
[‘aa‘,‘dd‘,‘cc‘]

>>>l[0:2]=[‘xx‘,‘yy‘]
>>>l
[‘xx‘,‘yy‘,‘cc‘]

列表方法的调用

>>>l.append(‘aa‘)
>>>l
[‘xx‘,‘yy‘,‘cc‘,‘aa‘]
>>>l.sort()
>>>l
[‘aa‘,‘cc‘,‘xx‘,‘yy‘]
>>>l.sort(key=str.lower)    按字符串的小写排序
[‘aa‘,‘cc‘,‘xx‘,‘yy‘]

>>>l.sort(key=str.lower,reverse = true)   翻转
>>>l
[‘yy‘,‘xx‘,‘cc‘,‘aa‘]


>>>l = [1,2]
>>>l.extend([3,4,5])    扩展
>>>l
[1,2,3,4,5]

>>>l.pop()    推出最后一个元素
>>>l
[1,2,3,4]

>>>l.reverse()        翻转
>>>l
[4,3,2,1]        


>>>l = []
>>>l.append(1)        添加数据
>>>l.append(2)
>>>l
[1,2]

>>>l = [‘aa‘,‘bb‘,‘cc‘]
>>>l.index(‘aa‘)    索引
0

>>>l.insert(1,‘xx‘)    插入
>>>l
[‘aa‘,‘xx‘,‘bb‘,‘cc‘]


>>>l.remove(‘xx‘)    移除
>>>l
[‘aa‘,‘bb‘,‘cc‘]

>>>l.pop(1)    移除索引元素
>>>l
[‘aa‘,‘cc‘]



其他常见的列表操作

>>>l = [‘aa‘,‘bb‘,‘cc‘]
>>>del l[0]        删除列表元素
>>>l
[‘bb‘,‘cc‘]

>>>del l[1:]        删除列表分片
>>>l
[‘aa‘]

>>>l = [‘aa‘,‘bb‘,‘cc‘]
>>>l[1:] = []        删除列表分片
>>>l
[‘aa‘]




字典

除了列表外,字典也许就是python中最灵活的数据结构了
字典的基本操作

>>>d = {‘spam‘:2,‘ham‘:1,‘eggs‘:3}
>>>d[‘spam‘]            通过key取值
2

>>>d
{‘spam‘:2,‘ham‘:1,‘eggs‘:3}

>>>len(d)            长度
3
>>>‘ham‘in d            成员
true

>>>list(d.keys())        将字典的key转换成list
[‘eggs‘,‘ham‘,‘spam‘]


原处修改字典

>>>d[‘ham‘] = [‘grill‘,‘bake‘,‘fry‘]        赋值
>>>d
{‘spam‘:2,‘ham‘:[‘grill‘,‘bake‘,‘fry‘],‘eggs‘:3}

>>>del d[‘eggs‘]    删除
>>>d
{‘spam‘:2,‘ham‘:[‘grill‘,‘bake‘,‘fry‘]}

其他的字典方法
>>>d = {‘spam‘:2,‘ham‘:1,‘eggs‘:3}
>>>list(d.values())
[3,1,2]


>>>list(d.items())
[(‘eggs‘,3),(‘ham‘,1),(‘spam‘,2)]

>>>d.get(‘spam‘)
2

>>>print(d.get(‘toast‘))
None

>>>d.get(‘toast‘,88)    默认值
88

字典的update方法类似于合并  相同的覆盖
>>>d2 = {‘toast‘:4,‘muffin‘:5,‘eggs‘:3}
>>>d.update(d2)
>>>d
{‘spam‘:2,‘ham‘:1,‘eggs‘:5,‘toast‘:4,‘muffin‘:5}

>>>d.pop(‘muffin‘)
{‘spam‘:2,‘ham‘:1,‘eggs‘:5,‘toast‘:4}



python学习之列表和字典

标签:

原文地址:http://www.cnblogs.com/techdreaming/p/5087131.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!