python基础知识(六)&字典

本文详细介绍了Python中字典的基本操作,包括创建、查找、修改、删除等,并演示了如何使用setdefault()方法和pop()函数。同时,文章还讲解了字典的排序和嵌套遍历技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

字典操作:

字典一种key - value 的数据类型,即键-值对
1、创建字典

dic1={'name':'alex'}
dic1['age']=18
print(dic1)

运行结果:

{'name': 'alex', 'age': 18}

2、setdefault():#键存在,返回字典中相应的键对应的值

dic1={'name':'alex'}
dic1.setdefault('age',34)#通过键来添加,如果有这个键就不添加,则不添加
print(dic1)

运行结果:

{'name': 'alex', 'age': 34}

3、键不存在,在字典中增加新的键值对,并返回相应的值

dic1={'name':'alex'}
set1=dic1.setdefault('hobby','girl')
print(set1)

运行结果:

girl

4、查找,通过键查找

dic3={'age':18,'name':'alex','hobby':'girl'}
print(dic3['name'])
print(dic3.keys())
print(list(dic3.keys()))#转换为list类型
print(list(dic3.values()))
print(list(dic3.items()))

运行结果:

alex
dict_keys(['age', 'name', 'hobby'])
['age', 'name', 'hobby']
[18, 'alex', 'girl']
[('age', 18), ('name', 'alex'), ('hobby', 'girl')]

5、修改

dic3={'age':18,'name':'alex','hobby':'girl'}
dic3['age']=45
print(dic3)

dic4={'1':'11','name':'333'}
dic3.update(dic4)
print(dic3)
print(dic4)

运行结果:

{'age': 45, 'name': 'alex', 'hobby': 'girl'}
{'age': 45, 'name': '333', 'hobby': 'girl', '1': '11'}
{'1': '11', 'name': '333'}

6、删

dic3={'age':18,'name':'alex','hobby':'girl','1':33,'2':44}
del dic3['age']#删除字典中的指定的键值对
print(dic3)
#dic3.clear()#清空字典
#print(dic3)

ret=dic3.pop('hobby')#把字典中的键值对删除,并返回该键所对应的的值
print(ret)
print(dic3)

ret1=dic3.popitem()#随机删除某组键值对,并以元组返回值
print(ret1)
print(dic3)

运行结果:

{'name': 'alex', 'hobby': 'girl', '1': 33, '2': 44}
girl
{'name': 'alex', '1': 33, '2': 44}
('2', 44)
{'name': 'alex', '1': 33}

7、删除整个字典

dic3={'age':18,'name':'alex','hobby':'girl','1':33,'2':44}
del dic3#删除整个字典
print(dict3)

运行结果:

NameError: name 'dic3' is not defined

8、sorted()

dic={5:'555',2:'22',3:'33'}
print(sorted(dic))#对键排序
print(sorted(dic.values()))#对值进行排序
print(sorted(dic.items()))

运行结果:

[2, 3, 5]
['22', '33', '555']
[(2, '22'), (3, '33'), (5, '555')]

9、字典嵌套

dic={5:'555',2:'22',3:'33'}
for i in dic:#效率高。推荐用这种
    print(i,dic[i])

for i,v in dic.items():
    print(i,v)

for i,v in enumerate(dic.items(),1):#对键值对添加索引
    print(i,'>>',v)

运行结果:

5 555
2 22
3 33

5 555
2 22
3 33

1 >> (5, '555')
2 >> (2, '22')
3 >> (3, '33')
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值