字典
一、字典的赋值方法:
1、各个赋值方法:
dic1 = {}
dic1['name'] = 'Donfag'
dic1['age'] = 20
dic1['job'] = 'Python'
print(dic1)
2、直接赋值方法:
dic2 = {
'name':'Donfag',
'age':20,
'job':'Python'
}
print(dic2)
3、利用dict函数赋值:
dic3 = dict(name='Donfag',age=20,job='Python') print(dic3)
#或者:
dic4 = dict(zip(['name','age','job'],['Donfag',20,'Python'])) print(dic4)
二、字典方法和函数:
1、setdefault方法,如果有键值对,不做任何改变,没有键值对,才进行添加:
dic = dict(name='Donfag',age=20,job='Python')
dic.setdefault('name','Tong')
dic.setdefault('address','Hefei')
print(dic)
返回结果:
{'name': 'Donfag', 'age': 20, 'job': 'Python', 'address': 'Hefei'}
2、pop方法,如果有键,则删除并返回该键对应的值,如果没有则会报错,如果不希望出现报错信息,可以在删除的后面添加信息:
dic = dict(name='Donfag',age=20,job='Python',address='Hefei')
dic.pop('address')
res = dic.pop('salary','没有此键')
print(dic,res)
返回结果:
{'name': 'Donfag', 'age': 20, 'job': 'Python'} 没有此键
3、del函数,del()可以删除整个字典,也可以删除字典的某个键,如果删除的键不存在,则会出现报错(也可以用clear()方法清空字典)
dic = dict(name='Donfag',age=20,job='Python',address='Hefei') del dic['address'] del dic
4、get方法,获取字典的值,如果没有会报错,但可以设置一个默认值:
dic = dict(name='Donfag',age=20,job='Python',address='Hefei')
print(dic.get('name'))
print(dic.get('salary','None'))
返回结果:
Donfag和None
5、keys方法,获取字典的所有键:
dic = dict(name='Donfag',age=20,job='Python',address='Hefei') print(dic.keys())
返回结果:
dict_keys(['name', 'age', 'job', 'address'])
6、values方法,获取字典的所有值:
dic = dict(name='Donfag',age=20,job='Python',address='Hefei') print(dic.values())
返回结果:
dict_values(['Donfag', 20, 'Python', 'Hefei'])
7、items方法,遍历字典的所有元素(键值对):
dic = dict(name='Donfag',age=20,job='Python',address='Hefei') for key,value in dic.items(): print(key,value,end=",")
返回结果:
name Donfag,age 20,job Python,address Hefei,
8、copy方法,用于拷贝一个字典的副本,修改原字典对象不会影响其副本,修改了副本也不会影响原字典:
dic = dict(name='Donfag',age=20,job='Python',address='Hefei') dic2 = dic.copy() del dic['address'] print(dic2) del dic2['name'] print(dic)
返回结果:
{'name': 'Donfag', 'age': 20, 'job': 'Python', 'address': 'Hefei'}
{'name': 'Donfag', 'age': 20, 'job': 'Python'}
9、fromkeys方法,用于创建一个新的字典,有两个参数:
第一个参数是一个序列(列表/元组/集合),用于作为字典的键。
第二个参数可以是任何数据类型,作为每个键的值,如果此参数为空,那么所有值都为None。
dic1 = dict().fromkeys(('name','age','job'))
dic2 = dict().fromkeys(('name','age','job'),'test')
dic3 = dict().fromkeys(('name','age','job'),['Donfag',20,'Python'])
print(dic1)
print(dic2)
print(dic3)
返回结果:
{'name': None, 'age': None, 'job': None}
{'name': 'test', 'age': 'test', 'job': 'test'}
{'name': ['Donfag', 20, 'Python'], 'age': ['Donfag', 20, 'Python'], 'job': ['Donfag', 20, 'Python']}
10、popitem方法,删除字典中最后一个键值对,并返回值:
dic = dict(name='Donfag',age=20,job='Python',address='Hefei') dic.popitem() print(dic)
返回结果:
{'name': 'Donfag', 'age': 20, 'job': 'Python'}
11、update方法,用于将字典2的值更新到字典1.如果字典2的键在字典1中已存在,则对字典1进行修改,或者对字典1进行添加:
dic1 = dict(name='Donfag',age=20,job='Python') dic2 = dict(name='Tong',address='Hefei') dic1.update(dic2) print(dic1)
返回结果:
{'name': 'Tong', 'age': 20, 'job': 'Python', 'address': 'Hefei'}
浙公网安备 33010602011771号