笨方法学python(6)加分题--列表与字典的区别
笨方法学python(6)加分题--列表与字典的区别
这篇对应的是习题39 字典, 可爱的字典
#encoding:utf-8 #列表与字典的区别 #列表 thing = ['name',1,'age','AD','sex'] print thing[1] #print thing['name'] #会报错,列表只能通过整数去访问:TypeError: list indices must be integers, not str stuff = {'name': 'tom','age': '28','1':'test'} print stuff['name'] #print stuff[1] #会报错,关键字错误 KeyError: 1 #字典只能通过自己定义的索引去访问,而列表是通过系统给的索引去访问 #print stuff['tom'] #会报关键字错误KeyError: 'tom' #通过上面,我们可以知道,(1)列表与字典定义时不一样,[]和{}的区别.(2)访问元素的方式不一样,列表是用系统提供好的整数0 1 2....去访问,而字典的索引是自己定义的 'a':'b' a是索引,b是对应的元素 #列表增加元素 thing.append('new1') #也可以用insert方法插入 thing.insert(1,'new2') #下面的方式是错误的 IndexError: list assignment index out of range #thing[4] = 'new2' for i in thing: print i #列表查询某个元素的索引位置 print thing.index('name') #列表删除元素,参数是该元素,非元素索引 thing.remove('age') #也可以用pop删除,删除的时候会返回被删除的值 print thing.pop() #不带参数默认删除最后一个元素 print thing.pop(0) #还有关于排序的方法 reverse(反向排序) sort print thing ,u'这个stuff.sort()排序前的结果' thing.sort() print thing ,'这个stuff.sort()的结果' #字典增加元素 stuff['job'] = 'IT' #setdefault如果有这个索引就返回该索引的元素值,如果没有就插入 stuff.setdefault('new4','default') #更新某个元素 stuff['job'] = 'IT1' #for i in stuff: # print i print stuff['job'] #字典删除元素 pop方法,用法跟列表的一样 print stuff print stuff.pop("job"),'这个stuff.pop()的结果' print stuff #获取某个值 print stuff.get("new4") #返回整个字典 print stuff.items(),'这个stuff.items()的结果' #values把列表的值打印出来 print stuff.values(),'这个stuff.values()的结果'
评论关闭