Python3与字典(笔记六)

1 篇文章 0 订阅
1 篇文章 0 订阅

字典的定义

字典的格式:字典名 = {key1:value1, key2:value2,…}#key1-value 键值对,key1是键名,value1是对应键的值。每个键都对应一个值,即使值为空。字典是无序的,是可变的数据类型,但字典的键值即key不能是可变的数据类型,如列表、字典,而且键是不能重复的,但是value可以重复。

mas = {'mas1':1,'mas2':2}#字典的定义
print(mas)#输出字典
print(mas['mas1'])#输出键值,也就是访问字典某键值

字典数据的添加、删除和修改

mas={'mas1':1,'mas2':'2'}

'''
字典数据的添加
'''
mas[‘mas3’]=3  #添加键值对,键是mas3,值是3

'''
字典数据的删除
'''
del(mas[‘mas2’])  #删除mas中键为mas2的键值对

'''
字典数据的修改
'''
mas[‘mas1’]=18 #将字典mas中键mas1对应的值改为18

列表和字典的嵌套使用

一行定义和多行定义(python允许列表多行定义,但是定义字符串只能在同一行定义但可使用转义字符\)

students = [{‘name’ :’sk1’,’age’:’a1’, ‘gender’:’男1}{‘name’ :’sk2’,’age’:’a2’, ‘gender’:’男2}{‘name’ :’sk3’,’age’:’a3’, ‘gender’:’男3}print(students[1][‘gender’])  #输出列表第一个字典中键为gender的值

我们可以判断两个字典是否相等

// An highlighted block	
stu1 = {‘name’ :’sikki’,’age’:’abc’, ‘gender’:’男’,’hobby’:[‘lan’,’qiu’]}
stu1 = {‘name’ :’sikki’,’age’:’abc’, ‘gender’:’男’,’hobby’:[‘lan’,’qiu’]}
print(stu1==stu2)	#字典不会判断顺序,只判断键/值是否相等

使用keys和values取得键集合和值集合

// An highlighted block
mas = {'name':'sk1','age':'a1','gender':'男1'}
print(mas.keys())	#输出mas所有键
for k in mas.keys():
	print(k)	#遍历输出字典mas的所有键
print(mas.values())	#输出mas所有键值
for v in mas.values():	
	print(v)	#遍历输出字典mas的所有键值

遍历字典的两种方法

// An highlighted block
mas = {'name':'sk1','age':'a1','gender':'男1'}
print(mas.items())	#方法一:取得字典mas所以键值对的值

for i in mas.items():	#方法二
    print(i)		#可得i是元组类型
    print(i[0],i[1])

判断键对值是否存在、设置键的默认值

stu1 = {‘name’ :’sk1’,’age’:’a1’, ‘gender’:’男1}
res = ‘gender’ in stu1.kesy()#判断fender是否存在stu1的键中,并把结果赋值给res
print(res)

res = ‘siki’ in stu1.valuse()#判断siki是否存在stu1的键值中,并把结果赋值给res
print(res)

res = ‘xx’ in stu1#默认判断键集合
print(res)

stu1.setdefault(‘name’,’micheal’)#设置默认值,当键不存在时才生效print(stu1[‘name’])
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值