字典 dict

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
In [43]: a = dict(k1='v1',k2='v2')
 
In [44]: type(a)
Out[44]: dict
 
In [45]: a
Out[45]: {'k1''v1''k2''v2'}
 
 
#这个方法和a这个字典没关系呀,没看懂。实际上就是生成新的字典。
In [47]: new_a = a.fromkeys(['k'],'v')
 
In [48]: new_a
Out[48]: {'k''v'}
 
In [49]: new_a = a.fromkeys(['k','w'],'v')
 
In [50]: new_a
Out[50]: {'k''v''w''v'}
 
 
#get方法。输入key,输出对应的value
In [54]: a.get('k1')
Out[54]: 'v1'
 
 
In [57]: a.get('k3','vv')    #如果输入一个不存在的key,就返回NONE,或者可以指定返回的值
Out[57]: 'vv'
 
 
In [59]: a.keys()
Out[59]: dict_keys(['k1''k2'])
 
In [60]: type(a.keys())
Out[60]: dict_keys
 
In [61]: a.values()
Out[61]: dict_values(['v1''v2'])
 
In [62]: a.items()
Out[62]: dict_items([('k1''v1'), ('k2''v2')])
 
#用for循环输出key,输出的是字符串
In [65]: for in a.keys():
    ...:     print(k)
    ...:     print(type(k))
    ...:       
k1
<class 'str'>
k2
<class 'str'>
 
#输出的是元组
In [66]: for in a.items():
    ...:     print(k)
    ...:     print(type(k))
    ...:     
('k1''v1')
<class 'tuple'>
('k2''v2')
<class 'tuple'>
 
 
In [68]: for k,v in a.items():
    ...:     print(k,v)
    ...:     
k1 v1
k2 v2
 
#pop方法需要输入参数,指定删除一个key的键值对。不写参数会报错
In [71]: a.pop('k1')
Out[71]: 'v1'
 
In [72]: a
Out[72]: {'k2''v2'}
 
#popitem不需要输入参数,随机pop一个。
In [76]: a
Out[76]: {'k1''v1''k2''v2'}
 
In [77]: a.popitem()
Out[77]: ('k2''v2')
 
In [78]: a
Out[78]: {'k1''v1'}
 
#添加一个键值对
In [80]: a['k3']='v3'
 
In [81]: a
Out[81]: {'k1''v1''k3''v3'}
 
#update也是添加
In [93]: a
Out[93]: {'k1''v1''k3''v3''k4''v4''k5''v5'}
 
In [94]: a.update({'k2':'v2'})
 
In [95]: a
Out[95]: {'k1''v1''k2''v2''k3''v3''k4''v4''k5''v5'}



本文转自 chomperwu 51CTO博客,原文链接:http://blog.51cto.com/chomper/1934341,如需转载请自行联系原作者
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值