首页 > 代码库 > python学习随笔(三)

python学习随笔(三)

三、字典学习

1 #创建一个字典,键可以是一个数字或者一个字符串,值可以为数字、字符串、列表、字典等
2 dict1 = dict({z:sw})
3 
4 #或者
5 dict2 = {z:sw}
1 #清空列表中的元素
2 dict1 = dict({z:sw})
3 dict1.clear()
4 print(dict1)  --> {}
1 #复制一个字典
2 dict1 = dict({z:sw})
3 dict2 = dict1.copy()
4 print(dict2)  -->  {z: sw}
1 #以某一序列(可以是元组或者列表)或者字符、字符串为键创建一个列表,第一个参数为序列,第二参数为值,默认为none
2 seq = [name, age, sex]
3 dict1 = dict.fromkeys(seq)
4 print(dict1)  -->  {name: None, age: None, sex: None}
5 dict2 = dict.fromkeys(seq,10)
6 print(dict2)  -->  {name: 10, age: 10, sex: 10}
1 #得到键对应的值,若有键在字典内返回对于的值,若没有则返回none
2 seq = [name, age, sex]
3 dict2 = dict.fromkeys(seq,10)
4 result1 = dict2.get(name)
5 result2 = dict2.get(z)
6 print(result1)  -->  10
7 print(result2)  -->  None
#得到字典的键、值对,以列表形式返回,每一对为一个元组的元素
seq = [name, age, sex]
dict2 = dict.fromkeys(seq,10)
list1 = dict2.items()
print(list1)  -->  dict_items([(name, 10), (age, 10), (sex, 10)])
1 #得到字典对应的键,以列表形式返还,相同用法为返回字典中的值values
2 seq = [name, age, sex]
3 dict2 = dict.fromkeys(seq,10)
4 list1 = dict2.keys()
5 print(list1)  -->  dict_keys([name, age, sex])
1 #弹出字典中某一键对应的值,参数为键,返回对应的值,若键不存在 报错误 KeyError
2 seq = [name, age, sex]
3 dict2 = dict.fromkeys(seq,10)
4 result = dict2.pop(name)
5 print(result)  --> 10 
#弹出字典中末尾的一对键值,以元组的形式返回,若字典为空则报错误 KeyError
seq = [name, age, sex,job]
dict2 = dict.fromkeys(seq,10)
result = dict2.popitem()
print(result)  -->  (job, 10)
 1 #查找字典中是否存在某一个键,若存在返回该键的值,若不存在字典中添加设定的键、值,返回设定的值,第一参数为键,第二参数为值,默认为None
 2 seq = [name, age, sex,job]
 3 dict2 = dict.fromkeys(seq,10)
 4 result1 = dict2.setdefault(name,20)
 5 print(result1)  -->  10
 6 print(dict2)  -->  {name: 10, age: 10, sex: 10, job: 10}
 7 
 8 result2 = dict2.setdefault(weight,80)
 9 print(result2)  -->  80
10 print(dict2)  -->  {name: 10, age: 10, sex: 10, job: 10, weight: 80}
1 #把字典B中的内容添加到字典A中,不生成新的字典,改变字典A中的内容,参数为字典B
2 seq1 = [name, age, sex,job]
3 dict1 = dict.fromkeys(seq1,10)
4 seq2 = (weight,height)
5 dict2 = dict.fromkeys(seq2)
6 print(dict1)  -->  {name: 10, age: 10, sex: 10, job: 10}
7 print(dict2)  -->  {weight: None, height: None}
8 dict1.update(dict2)
9 print(dict1)  -->  {name: 10, age: 10, sex: 10, job: 10, weight: None, height: None}

 

python学习随笔(三)