python数据类型三-day5

不可变:(可哈希):数字、字符串、元组、布尔值
可变: (不可哈希):列表 字典

字典:字典里的键必须保证唯一(不能重复)
    格式:{'key':'values'}
键值对数据,可以for循环
    键要求:
  不可变数据类型
  字典不能当字典的键
    值无求

注意:
python36 有顺序打印
python35及以下无序打印

1 #如果这个键不在字典中就是添加,存在就是修改(根据键来修改值)
2 方法一:
3     dic['3'] = 'linux'     #修改键为3的值为linux
4     print(dic)
5 
6 方法二:键存在就不进行添加,不存在就添加
7 #setdefault中第一个参数是键,第二参数是值,如果不写值就默认为None
8     dic.setdefault('周阳','国家一级大厨')
9     print(dic)

删:字典是没有remove

 1 方法一:
 2 #pop返回的是被删除的值,pop一定要给参数,参数是要删除的键
 3     s = dic.pop('3')
 4     print(s)
 5     print(dic)
 6 
 7 方法二:
 8 #python35及以下随机删除.但在python36中删除最后一个
 9     s1 = dic.popitem()
10     print(s1)         #popitem返回的是被删除的键值对以元组的形式显示
11     print(dic)        #元组中第一个是字典中的键,第二个是字典中的值
12 
13 方法三:
14 #删除整个字典
15 del dic
16 print(dic)
17 
18 方法四:
19 #通过dic['键']删除
20     del dic['3']
21     print(dic)
22 
23 方法五:
24 #清空
25     dic.clear()

1     dic = {1:2,'3':8,False:True,(1,2,3):['132','qw'],'周公':'移山'}
2     dic[1] = 78     #如果这个键和值在字典中就是修改,不存在就是添加
3     print(dic)
4     dic1 = {'计算机':'admin',4:89}
5     dic1.update(dic)    #把字典dic里边的键值更新到dic1字典的键值后边
6     print(dic1)

1 方法一:
2     dic = {1:2,'3':8,False:True,(1,2,3):['132','qw'],'周公':'移山'}
3     s = dic.get(4)   #不报错,默认返回None,可以自己定义None返回值dic.get(4,'返回值')
4 
5 方法二:
6     print(dic[4])   #键不存在就报错
7     print(s)

其他操作

 1     dic = {1:2,'3':8,False:True,(1,2,3):['132','qw'],'周公':'移山'}
 2     print(dic.keys())       #以列表形式打印键keys
 3     print(dic.values())     #以列表形式打印键values
 4     print(dic.items())      #以元组形式将键值对放在一个列表里
 5 
 6 #循环打印值keys,values
 7     for k,v in dic.items():
 8         print(k,v)
 9 
10 #循环打印值values
11     for i in dic.values():
12         print(i)
13 
14 #循环打印键keys
15     for i in dic:
16         print(i)
17 
18 #判断键keys是否在字典中,如果在就True,如果不在就False
19 if 1 in dic:
20     print(666)
21 
22 for i in dic:
23     print(dic[i])           #使用默认方法获取值values
24     print(dic.get(i))       #使用get方法获取值values
25 
26 for i in dic:
27     print(i,dic[i])         #使用默认方法循环获取字典中的键值

解构:

 1 a,b = 1,2
 2 print(a)    a == 1
 3 print(b)    b == 2
 4 
 5 赋值方法二:
 6 c,d = (1,2)
 7 print(c)
 8 print(d)
 9 
10 赋值方法三:
11 a,b = [1,2]
12 print(a)
13 print(b)
14 
15 赋值方法四:
16 a,c = 12 ,8
17 print(a)    a == 12
18 print(c)    c == 8
19 
20 赋值修改方法一:
21 a = 10
22 b = 20
23 a,b = b,a   a == 2,b == 10

字典的嵌套:

 1 dic = {'name':'汪风',
 2        'age':48,
 3        'job':'输出',
 4        'wife':[{'name':'小姐姐','age':20,'job':'输入','baby':'小苹果'},
 5                {'name':'国际章','age':23,'job':'国际输入','baby':['熊大','熊二']}],
 6        }
 7 
 8 print(dic['wife'][0]['name'])
 9 小姐姐
10 print(dic['wife'][0]['baby'])
11 小苹果
12 print(dic['wife'][1]['baby'][0])
13 熊大

猜你喜欢

转载自www.cnblogs.com/linuxcbb/p/9862597.html
今日推荐