zl程序教程

您现在的位置是:首页 >  后端

当前栏目

python全栈开发-Day5 元组、字典详解编程语言

Python编程语言开发 详解 字典 元组 全栈 Day5
2023-06-13 09:20:36 时间
#2:该类型总结 1 、存一个值or存多个值, 只能存一个值 可以存多个值,值都可以是什么类型 2 、有序or无序 3 、可变or不可变 !!!可变:值变,id不变。可变==不可hash !!!不可变:值变,id就变。不可变==可hash 二、元组 #作用:存多个值,对比列表来说,元组不可变(是可以当做字典的key的), #主要是用来读 定义:与列表类型比,只不过[]换成() age=(11,22,33,44,55)本质age=tuple((11,22,33,44,55)) #优先掌握的操作: #1、按索引取值(正向取+反向取):只能取          #跟字符串,列表的取值一样,就不详细说了   #2、切片(顾头不顾尾,步长) 
1 t=(1,2,3,4,5,6) 

2 print(t[1:4]) 

4 #结果为 (2, 3, 4)
#3、长度          
1 t=(1,2,3,4,5,6) 

2 print(len(t)) 

4 #结果为 6
#4、成员运算in和not in        
1 t=(1,2,3,4,5,6) 

2 print((1) in t) 

4 #结果为 Ture #not in 就为Flase
#5、循环
 1 t=(1,2,3,4,5,6) 

 3 #不依靠索引循环 

 4 for i in t: 

 5 print(i) 

 7 #依靠索引的两种循环 

 8 #for循环 

 9 for i in range(len(t)) 

10 print(i) 

12 #while 循环 

13 n=0 

14 while Ture: 

15 print(t[i]) 

16 n+=1 

17 
#作用:存多个值,以key-value存取,取值速度快,每一个值都有对应的key {}内以逗号分割多个元素 key必须是不可变类型,value可以是任意类型 info={ name : egon , age :18, sex : male } #本质info=dict({ .}) 或 info=dict(name= egon ,age=18,sex= male ) 或 info=dict([[ name , egon ],( age ,18)]) 或 {}.fromkeys(( name , age , sex ),None) #优先掌握的操作: #1、按key存取值:可存可取
1 dic={name:duoduo} 

2 dic[age]=10 

3 print(dic) #值为{name:duoduo,age:10} 可存 

5 dic[name]=qian 

6 print(dic) #值为{name:qian,age:10} 可改
  #2、长度len      
1 dic={name:duoduo,age:18} 

2 print(len(dic)) 

4 #结果为 2
  #3、成员运算in和not in   (判断key存在)  
1 dic={name:egon,age:18} 

2 print(name in dic) 

4 # 结果为 Ture
#4、删除
 1 dic={name:duoduo,age:18} 

 2 res=dic.pop(name) #和列表不同的地方在后面加的参数 

 3 print(res) #值为duoduo 

 4 print(dic) #值为{age:18} 

 6 # del dic[name] 

 7 # print(dic) 万能的删除 

10 #res=dic.pop(qian,None) #这里的删除对象不再原来的字典 

11 #print(res) #在后面添加None 就不会报错,返回值None
#5、键keys(),值values(),键值对items(),循环  
#键keys() 

dic={name:duoduo,age:18} 

print(dic.keys()) 

#值为dict_keys([name, age]) 

for key in dic.keys(): #字典.keys()这个方法省略不写直接dic也可以 

 print(key) 

#结果为 name age 

#值values() 

dic={name:duoduo,age:18} 

print(dic.values()) #值为dict_values([duoduo, 18]) 

for values in dic.values(): 

 print(values) 

#结果为 duoduo 18 


 1 dic={name:duoduo,age:18} 

 2 print(dic.get(namexxxx)) #没发现,输出None 

 3 print(dic[namexxxxxxxxxx]) 

 4 # 这个会报错 #小结:寻找到返回值,寻找不到返回None 

 6 print(dic.popitem()) #弹出末端的一组数据 

 7 print(dic) #值为 {name:duoduo} 

10 dic.update({x:1,age:19}) 

11 #对与老字典来说,更新指的是,新字典中有而老字典中没有则添加,新有而老有,则覆盖 

12 print(dic) #值为 {name:duoduo,age:19} 

15 dic.fromkeys() #创建新字典的种便捷方法 

16 good_info={ 

17 name:None, 

18 price:None, 

19 count:None 

20 } 

21 # mac 20000 10 

22 good_info[name]=mac 

23 print({}.fromkeys([name,age,sex],None)) 

24 #值为{name:None,age:None,sex:None} 

27 #setdefaul的用处: 

28 # 1、字典有中有key,则不修改,返回原key对应的原值 

29 dic={name:duoduo,age:18} 

30 res=dic.setdefault(name,qian) 

31 print(返回值,res) #返回值 duoduo 

32 print(dic) #{name:duoduo,age:18} 

34 # 2、没有对应的key,则添加,返回添加的key对应的value 

35 dic={age:18} 

36 res=dic.setdefault(name,qian) 

37 print(返回值,res) #返回值 qian 

38 print(dic) #{age: 18, name: qian}
#1、存多个值
#2、无序
#3、可变

 

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/12231.html

cgojavamac