Python基础:字典

字典dictionary

字典是另外一种可变容器类型,且可以存储任意类型对象。列表元素进行修改的话,通过索引进行修改,如果当前元素的顺序发生改变,此时还需要修改索引才能完成修改。然而字典既能存储多个数据,又能方便准确的定位元素。

创建字典
语法:
字典名 = {key1:value1,key2:value2,...}
示例:
student = {'name':'tom','age':18,'sex':'男'}
访问字典
students = {'name':'张三','age':18,'address':'北京'}
print(students['name'])     #根据key找到值
返回结果:
张三
修改字典

通过找到指定的key进行修改

students = {'name':'张三','age':18,'address':'北京'}
students['name'] = '李四'
print(students)
返回结果:
{'name': '李四', 'age': 18, 'address': '北京'}

添加字典元素

students = {'name':'张三','age':18,'address':'北京'}
students['hobby'] = '足球'
print(students)
返回结果:
{'name': '张三', 'age': 18, 'address': '北京', 'hobby': '足球'}
删除字典

del 字典名[key]:指定key删除

students = {'name':'张三','age':18,'address':'北京'}
del students['address']     #指定key删除元素
print(students)
返回结果:
{'name': '张三', 'age': 18}

del 字典名:删除字典

students = {'name':'张三','age':18,'address':'北京'}
del students    #删除字典,删除后结果为NameError: name 'students' is not defined,未定义
print(students)
返回结果:
NameError: name 'students' is not defined

字典名.clear():清空整个字典元素,保留一个空的字典

students = {'name':'张三','age':18,'address':'北京'}
students.clear()
print(students)
返回结果:
{}
字典函数

len(dict):计算字典中元素的个数

dict1 = {'name':'tom','age':18,'sex':'男','hobby':'足球'}
print(len(dict1))
返回结果:
4

str(dict):输出字典,也可打印的字符串表示

dict1 = {'name':'tom','age':18,'sex':'男','hobby':'足球'}
str1 = str(dict1)
print(str1)
print(type(str1))   #判断str1的数据类型
返回结果:
{'name': 'tom', 'age': 18, 'sex': '男', 'hobby': '足球'}
<class 'str'>

type(variable):返回输入变量的数据类型,如果变量是字典就返回<class ‘dict’>

dict1 = {'name':'tom','age':18,'sex':'男','hobby':'足球'}
print(type(dict1))
返回结果:
<class 'dict'>

dict.fromkeys(seq[,value]):创建一个新字典,以序列seq元素做字典的值,value为字典所有键对应的初始值

seq = ('name','age','sex')
dict1 = dict.fromkeys(seq)
print("新字典为:",dict1)
dict2 = dict.fromkeys(seq,'jack')
print("新字典为:",dict2)
返回结果:
新字典为: {'name': None, 'age': None, 'sex': None}
新字典为: {'name': 'jack', 'age': 'jack', 'sex': 'jack'}

dict.get(key,default=None):返回指定键的值,如果值不在字典中返回default值,如果字典存在该key对应的元素,就输出原值,否则输出该key输入值

dict1 = {'name':'tom','age':18}
print("age键的值为:",dict1.get('age',9))
print("sex键的值为:",dict1.get('sex','男'))
返回结果:
age键的值为: 18
sex键的值为:

key in dict:如果key在字典dict中则返回True,否则返回False

dict1 = {'name':['tom','jack'],'age':19,'sex':'男','hobby':'足球'}
if 'name' in dict1:
    print("键name在字典中存在")
else:
    print("键name在字典中不存在")
返回结果:
键name在字典中存在

dict.keys():以列表返回一个字典所有键名

dict1 = {'name':['tom','jack'],'age':19,'sex':'男','hobby':'足球'}
print(dict1.keys())
返回结果:
dict_keys(['name', 'age', 'sex', 'hobby'])

dict.setdefault(key,default=None):和get类似,但如果键不存在字典中,将会添加键并将值设为default

dict1 = {'name':'tom','age':19}
print("age键的值为:",dict1.setdefault('age',9))
print("sex键的值为:",dict1.setdefault('sex','男'))
print("新字典为:",dict1)
返回结果:
age键的值为: 19
sex键的值为: 男
新字典为: {'name': 'tom', 'age': 19, 'sex': '男'}

dict.values():以列表返回一个字典中的所有值

dict1 = {'name':'tom','age':19}
print(dict1.values())
print(dict1.items())    #将键值对返回并且返回至元组中
返回结果:
dict_values(['tom', 19])
dict_items([('name', 'tom'), ('age', 19)])
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值