字典由大括号和键值对组成,特点为无序,键唯一
1.字典的创建
rush:python;gutter:true;">#直接创建字典 dic1={'name':'a','age':20} #通过dict创建字典,输出都为{'name': 'a','age': 20} dic2=dict((('name','a'),('age',20))) print(dic2) dic3=dict([['name','a'],['age',20]]) print(dic3)
rush:python;gutter:true;">dic1={'name':'a'} dic1['age']=20 print(dic1) #如果字典中存在age,那么将age的值修改为20,如果不存在,则添加'age':20age=dic1.setdefault('age',18)
print(age)键存在,不改动,返回字典中相应的键对应的值,输出为20
hobby=dic1.setdefault('hobby','sport')
print(hobby)键不存在,在字典中中增加新的键值对,并返回相应的值,输出为sport
3.字典的查询,通过键去查找
rush:python;gutter:true;">dic3={'age': 20,'name': 'a','hobby': 'sport}print(dic3['name'])#输出a
print(dic3.get("name"))#输出aprint(dic3.get("sex","male"))#如果有sex键则返回对应的值,没有的话返回"male"
print(dic3.keys())#输出dict_keys(['age','name','hobby']),其他同理
print(list(dic3.keys()))#输出['age','hobby']
print(list(dic3.values()))#输出[20,'a','sport']
print(list(dic3.items()))#输出[('age',20),('name',('hobby','sport')]更新字典
dic4={'age': 20,'hobby':'sport'}
dic5={'1':'111','name':'222'}
dic4.update(dic5)
print(dic4)#输出{'age': 20,'name': '222','hobby': 'sport','1': '111'}
print(dic5)#输出{'1': '111','name': '222'}
4.字典的删除
rush:python;gutter:true;">dic5 = {'name': 'a','age': 20,'hobby': sport}dic5.clear() # 清空字典
del dic5['name'] #删除字典中指定键值对
print(dic5.pop('age')) #删除字典中指定键值对,并返回该键值对的值,应该输出20
a = dic5.popitem() #随机删除某组键值对,并以元组方式返回值
del dic5 #删除整个字典
5.其他创建字典的方法
rush:python;gutter:true;">dic6=dict.fromkeys(['host1','host2','host3'],'test') print(dic6)#输出{'host3': 'test','host1': 'test','host2': 'test'}dic6=dict.fromkeys(['host1',['test1','tets2'])
print(dic6)#{'host2': ['test1','tets2'],'host3': ['test1','host1': ['test1','tets2']}dic6['host2'][1]='test3'
print(dic6){'host3': ['test1','test3'],'host2': ['test1','test3']},这里不仅仅只改变了host2的值
6.字典的遍历
可以利用for循环
rush:python;gutter:true;">dic5 = {'name': 'a','hobby': 'sport'}for i in dic5:
print(i,dic5[i])for i,v in dic5.items():
print(i,v)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。