笔记2_列表、元组、字典
列表、元组、字典
#列表: 列表是可以嵌套的。 word=['a','b','c'] a=word[2] #通过索引访问列表 print "a is:"+a a is:c word=['a','b','c','d','e','f','g'] b=word[1:3] #取从1开始到3前面的元素 print b ['b', 'c'] b=word[1:2] print b ['b'] print word[1:4] #取从1开始到4前面的元素 ['b', 'c', 'd'] print word[2:3] word[-1] #-1表倒数 aa=a[-4:-1] #倒数截取,结果正排 删除列表的第一个值 del sample_list[0] 在列表中插入一个值 sample_list[0:0] = ['sample value'] 得到列表的长度 list_length = len(sample_list) 列表遍历 for element in sample_list: print(element) list的方法 L.append(var) #追加元素 L.insert(index,var) L.pop(var) #返回最后一个元素,并从list中删除之 L.remove(var) #删除第一次出现的该元素 L.count(var) #该元素在列表中出现的个数 L.index(var) #该元素的位置,无则抛异常 L.extend(list) #追加list,即合并list到L上 L.sort() #排序 L.reverse() #倒序 list 操作符:,+,*,关键字del a[1:] #片段操作符,用于子list的提取 [1,2]+[3,4] #为[1,2,3,4]。同extend() [2]*4 #为[2,2,2,2] del L[1] #删除指定下标的元素 del L[1:3] #删除指定下标范围的元素 list的复制 L1 = L #L1为L的别名,用C来说就是指针地址相同,对L1操作即对L操作。函数参数就是这样传递的 L1 = L[:] #L1为L的克隆,即另一个拷贝。 元组:元组是不可变的,元组可以嵌套 aTuple=(1,2,3,'hello') aTuple (1, 2, 3, 'hello') aTuple[0] 1 aTuple[-1] 'hello' aTuple[2:] (3, 'hello') aTuple[:2] (1, 2) aTuple[0:3] (1, 2, 3) aTuple[0]=5 #出错 for element in aTuple: print element #字典:字典中的键/值对是没有顺序的 x={'a':'aaa','b':'bbb','c':12} print x['a'] aaa print x['c'] 12 从Python 2.2 版本起 fdict = dict((['x', 1], ['y', 2])) 可以以数字,元组为键,但不可以以列表,字典为键,键必须是不可变的元素 a={1:11} b={2:22} x[a]=11111 #报错 x[b]=22222 字典添加: x['d']='ddd' #字典修改 x['d']='dddd' #字典删除 #del x['a'] #x.clear() b=x.pop('b') for key in x: print("%s=%s"%(key,x[key])) #----------------set----------------------- set set就像是把Dict中的key抽出来了一样,类似于一个List,但是内容又不能重复,通过调用set()方法创建 s = set(['A', 'B', 'C']) s.add('hello') s.add('ss') s.add('hello') s.remove('hello') s.update('zw') #是把要传入的元素拆分,做为个体传入到集合中 for key in s: print key #---------------相互转换---------------------- #1、字典 dict = {'name': 'Zara', 'age': 7, 'class': 'First'} #字典转为字符串,返回:<type 'str'> {'age': 7, 'name': 'Zara', 'class': 'First'} print type(str(dict)), str(dict) #字典可以转为元组,返回:('age', 'name', 'class') print tuple(dict) #字典可以转为元组,返回:(7, 'Zara', 'First') print tuple(dict.values()) #字典转为列表,返回:['age', 'name', 'class'] print list(dict) #字典转为列表 print dict.values() #2、元组 tup=(1, 2, 3, 4, 5) #元组转为字符串,返回:(1, 2, 3, 4, 5) print tup.__str__() #元组转为列表,返回:[1, 2, 3, 4, 5] print list(tup) #元组不可以转为字典 #3、列表 nums=[1, 3, 5, 7, 8, 13, 20]; #列表转为字符串,返回:[1, 3, 5, 7, 8, 13, 20] print str(nums) #列表转为元组,返回:(1, 3, 5, 7, 8, 13, 20) print tuple(nums) #列表不可以转为字典 #4、字符串 #字符串转为元组,返回:(1, 2, 3) print tuple(eval("(1,2,3)")) #字符串转为列表,返回:[1, 2, 3] print list(eval("(1,2,3)")) #字符串转为字典,返回:<type 'dict'> print type(eval("{'name':'ljq', 'age':24}"))