列表
1、定义和写法
用中括号括起来
用,分割每个元素
列表中的元素可以是数字,字符串,列表,布尔值,所有的都能放进去
“集合”,内部可放置任何东西
2、用法
#索引取值 li=[1,12,9,"age",["steven","a",["b","c"],"D"]] print(li[3]) #切片,切片结果也是列表 print(li[2:-1]) #for 循环 #while循环 for item in li: # if type(item)==list: # for i in item: # print(i) # continue print(item) #列表元素可以被修改 #修改 li[1]=120 #删除,第一种方式 del li[1] #通过切片的方式进行修改 li[1:3]=[120,90] del li[2:6] #通过切片删除 #in 操作 v=12 in li #结果为True # 字符串转列表 s='agcdefgh' newLi=list(s) #转化成列表,调用for循环,对每个字符进行分隔 #结果为:['a', 'g', 'c', 'd', 'e', 'f', 'g', 'h'] # 列表转字符串 li=[11,22,33,"123","abcd"] t=str(li)#只是把整个列表加引号变成字符串 #列表转化成字符串,要自己写for循环。既有数字又有字符串时 #直接使用join的方法,列表全部只有字符串时可用 str1="".join(li[3:5])
3、其他方法
li.append("NB")#追加,列表可以修改,在原来值最后追加 li.clear()#清空列表 li.copy()#拷贝 li.count(12)#计算元素出现的次数 li.extend(iterable)#扩展原列表,传入可迭代对象,参数 #li.extend([9898,"其他"]) li.index(12)#根据值获取当前值索引位置,左边优先 #index(self,value,start,stop) li.insert(0,99)#在指定索引位置插入元素 li.pop(2)#删除某个值,并获取删除的值,默认删除最后一个 li.remove(12)#删除列表中的指定值,左边优先 li.reverse()#将当前列表进行反转 li.sort()#排序,从小到大 li.sort(reverse=True)#从大到小
元祖
1、定义
一般写元祖的时候,推荐再最后加入,
元素不可被修改,不能被增加或删除
索引,切片,for循环,可迭代对象
2、用法
s="dkajdjfka" li=[] tu=() #字符串,列表转化成元祖 r=tuple(s) v=tuple(li) #元祖转化成列表 v=list(tu) # 元组的一级元素不可修改/删除/增加,当里面嵌套的列表时,列表可以被修改 tu=(111,"steven",(11,22),[(33,44)],True,33) tu[3][0]=555 #其他方法 tu.count(33) #获取指定元素在元祖中出现的次数 tu.index(33) #获取某一个值在元组内的索引
字典
1、定义
# 创建 info={"k1":"v1","k2":"v2"} # 字典的value可以是任何值 info={1:"asdf","k1":"asdf",(22,33):123}
key可以是数字,字符串,元祖,布尔。列表字典不能作为key
字典是无序的
补充:key相同时,字典的一个key会被覆盖
True为key时,应默认为1,会覆盖key为1的一个元素
2、用法
#for循环
info={1:"asdf","k1":"asdf",(22,33):123}
for item in info: #默认根据key循环 print(item) for item in info.values(): #循环value # for item in info.keys(): #循环key print(item) for k,v in info.items(): #循环健值对 print(k,v) #其他方法 info.clear() #清除 info.copy() #拷贝 #fromkeys()静态方法,根据序列,创建字典并指定统一的值 dicNew=dict.fromkeys(["k1",123,"999"],123)#{'k1': 123, 123: 123, '999': 123} #get() v=dicNew["k1"] v=dicNew.get("k4",1111)#根据key获取值,key不存在时可以指定默认值,默认是None #pop() v=dicNew.pop("k1") v=dicNew.pop("k4",90) #删除指定的值,并获取删除的值,加参数时删除的值不存在时,获取指定的值 #popitem() v=dicNew.popitem()#随机删除,并获取删除的键值对(元组) k,v=dicNew.popitem() #setdefault()设置值 v=dicNew.setdefault("k11","223") #已存在,不设置,获取当前key对应的值;不存在,设置,获取当前key对应的值 223 #update()更新 dicNew.update({"k1":"1111","k3":123}) dicNew.update(k1=333,k3=345,k5="asdf")