1.字符型str
前一篇博客已更新
2.列表list的部分
1 li = [11,12,13,14,15,16] 2 3 li.append() #追加元素,在列表的末尾增加 4 5 li.insert(index,新元素) #在制定位置增加元素,原来位置的元素会在之后。 6 7 8 li.remove(元素) #删除制定的元素,没有返回值 9 10 li.pop(index) #删除执行位置的元素(默认是最后一个),返回删除的元素 11 12 del li[index] #删除制定位置的元素
1 列表的切片 2 3 li = [11,12,13,14,15,16] 4 5 new = li[1:5:2] #索引1位置开始取值,到索引5的位置结束,不包括5,没2个位置,取一个值 6 new = [12,14] 7 8 li[-4:] #反向取值, 9 10
列表的长度 len(list) #返回列表的长度,
列表的循环: list = [11,22,33,44,55,66,77] #1.用索引 index = 0 while index < len(list): print(list[index]) index +=1 #2.用for 循环 for each in list: print(each)
1 列表的包含关系 in 与 not in 2 3 元素 in list #返回布尔值True /False 4 5 示例: 6 list = [11,22,33,44,55,66,77] 7 8 res = 11 in list 9 10 print(res) ==>True
3.元祖tuple
作用:存多个值,对比列表来说,元组不可变,主要是用来读
定义:与列表类型,只不过[]换成()
#有如下方法,跟list一样使用,这里就不写了,同上
索引 切片 循环 长度 包含in
4.字典dict
作用:存多个值,key-value存取,取值速度快
定义:key必须是不可变类型,value可以是任意类型
1 #循环取字典的key value items 2 #取key 3 d = {'name':'egon','age':18} 4 for key in d: #默认是取key 5 print(key) 6 7 for key in d.keys(): 8 print(key) 9 10 #取值 11 for value in d.values(): 12 print(value) 13 14 for key in d: #通过key来取值 15 print(d[key]) 16 17 #取键值对 18 for key,value in d.items(): 19 print(key,value) 20 21 for key in d: 22 print(key,d[key]) 23 24 for key in d.keys(): 25 print(key,d[key])
#字典常用的内置方法 ###dict.get() 通过字典的key来取值,找到key,则返回对应的value,没找到,则返回默认的值,不会报错。(不指定默认的情况下返回None) d = {'name':'egon','age':18} res = d.get('name') #返回egon res1 = d.git('sex','没找到') #返回没找到
#字典的内置方法pop() d.pop(key,默认值None) #通过指定的key来删除键值对。如果有指定的key,则删除并返回对应的value,如果没有,会返回默认值,如果没有设置默认值,则报错。 d ={'name':'egon','age':18} res = d.pop('name') print(res)
>>>egon res1 = d.pop('name','empty') print(res1)
>>>empty
#字典的内置方法popitem() #popitem()方法随机返回并删除字典中的一对键和值,popitem弹出随机的项,
#因为字典并没有"最后的元素"或者其他有关顺序的概念。若想一个接一个地移除并处理项,这个方法就非常有效(因为不用首先获取键的列表)。 res = d.popitem() #随机返回一个键值对
#字典的内置方法clear() #清除字典的所有元素 d.clear() print(d)
>>>{}
#字典的内置方法fromkeys #用于快速建立一个字典,key对应的值都是相同的 dic = dict.fromkeys(['name1','name2','name3'],'egon') print(dic) >>>{'name1': 'egon', 'name2': 'egon', 'name3': 'egon'}
5.队列模拟、堆栈模拟
1 #4.1用append+pop模拟队列和堆栈 2 #队列(先进先出) 3 li = [] 4 li.append('egon') 5 li.append('alex') 6 li.append('wupeiqi') 7 li.pop(0) 8 li.pop(0) 9 li.pop(0) 10 11 #堆栈 (后进先出) 12 li = [] 13 li.append('egon') 14 li.append('alex') 15 li.append('wupeiqi') 16 li.pop() 17 li.pop() 18 li.pop() 19 20 # 4.2用insert+pop模拟队列和堆栈 21 #队列 22 li = [] 23 li.insert(0,'egon') 24 li.insert(0,'alex') 25 li.insert(0,'weipeiqi') 26 li.pop() 27 li.pop() 28 li.pop() 29 30 #堆栈 31 li=[] 32 li.insert(0,'egon') 33 li.insert(0,'alex') 34 li.insert(0,'wupeiqi') 35 li.pop(0) 36 li.pop(0) 37 li.pop(0)
6.集合的内置方法
定义集合: 集合:可以包含多个元素,用逗号分割, 集合的元素遵循三个原则: 1:每个元素必须是不可变类型(可hash,可作为字典的key) 2:没有重复的元素 3:无序
1 set1 = {1,2,3,4,5,6,7} 2 set2 = {5,6,7,8,9,10} 3 4 #in 和 not in 5 print(2 in set1) 6 >>>True 7 print(3 not in set1) 8 >>>False 9 10 11 #合集 12 print(set1 | set2) 13 >>>{1,2,3,4,5,6,7,8,9,10} 14 15 print(set1.union(set2)) 16 >>>{1,2,3,4,5,6,7,8,9,10} 17 18 19 #交集 20 print(set1 & set2) 21 >>>{5,6,7} 22 print(set1.intersection(set2)) 23 >>>{5,6,7} 24 25 #差集 在set1中,不在set2中的元素 26 print(set1 - set2) 27 >>>{1,2,3,4} 28 print(set1.difference(set2)) 29 >>>{1,2,3,4} 30 31 #差集 在set2中,不在set1中的元素 32 print(set2 - set1) 33 >>>{8,9,10} 34 print(set2.difference(set1)) 35 {8,9,10} 36 37 #父集 set1是否是set2的集合 38 print(set1 > set2) 39 >>>True 40 print(set1.issupperset(set2)) 41 >>>True