Python 字典dict{}、集合set(),详细分析及功能

本文详细介绍了Python中的字典和集合。字典是一种键值对数据结构,适用于快速存库,支持增删改查操作;集合具有无序性和去重功能,常用方法包括add()、update()等。文中通过实例展示了各种操作的使用方法。

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

一、字典的应用场景
 思考1:如果有多个数据,录入:'TOM','男','20',如何快速存库。
字典,字典里面的数据都是键值对形式的出现,字典的数据和数据顺序没有关系,即字典不支持下标,只要找到对象的键就行。
二、创建字典的语法
 1.符号为大括号
 2.数据为键值对形式出现
 3.各个键值对之间用逗号隔开就行
#####有数据的字典
dict1 = {'name':'Tom','gender':'男','age':20}
print(dict1)
print(type(dict1))
#####创建空字典
dict2 = {}   #大括号
print(type(dict2))
dict3 = dict()
print(type(dict3))
# 三、字典的常见操作
# 3.1增
# 写法:字典序列【key】=值
# 注意:如果key存在,则修改这个key对应的值,如果key不存在则新增键值对。
dict1 ={'name':'Tom','age':20,'gender':'男'}
dict1['ID'] = 110
print(dict1)
dict1['name'] = 'rose'
print(dict1)
#3.2 删除数据
dict1 ={'name':'Tom','age':20,'gender':'男'}
#del(dict1)
del  dict1['name'] #如果存在可以删除,不存在报KEY 错误
print(dict1)
dict1.clear()
print(dict1)
#3.3 修改
dict1 ={'name':'Tom','age':20,'gender':'男'}
dict1['name'] = 'ROSE'
dict1['id'] = 11100
print(dict1)
#3.4 查找操作
dict1 ={'name':'Tom','age':20,'gender':'男'}
print(dict1['name']) #如果key存在,返回对应的值。如果不存在,报错。
#函数
#字典序列.get(key,默认值)
print(dict1.get('name'))
print(dict1.get('id',110)) #如果key不存在,返回第二个参数110
print(dict1.get('id'))#如果不存在,返回None
#keys()  #查找字典中所有的key,返回可迭代的对象
print(dict1.keys())  #可以用于for遍历的对象
#values() 查找当前字典的所有值,返回可迭代的对象
print(dict1.values())#
#items()
print(dict1.items())#查找里面的键值对,返回可迭代的对象
for key,value in dict1.items():
    print(key,value)
# 四,字典的循环遍历
# 1.遍历字典的key
dict1 ={'name':'Tom','age':20,'gender':'男'}
for key in dict1.keys():
    print(key)

# 2.遍历字典的values
for value in dict1.values():
    print(value)
# 3.遍历字典的元素
for item in dict1.items():
    print(item)
# 4.遍历字典的键值对
dict1 ={'name':'Tom','age':20,'gender':'男'}
for key,value in dict1.items():
    print(key)
    print(value)
#    print (f'{key}={value}') #格式化f-string
#    print("{}={}".format(key,value))##格式化.format
#    print('%s=%s'%(key,value)) #格式化%

#集合的学习
# 一、创建集合
s1 = {10,20,30,40,50}
print(s1)
s2  = {10,20,30,40,50,60,70}
print(s2)
s3 = set('abcdefg')
print(s3)
s4 = set()  #创建空集合只能用set()
print(type(s4))
print(s4)
#集合无顺序性,不支持下标操作,集合数据去重功能。
# 二、集合的常见方法,add(),update()
s1 = {10,20,30,40,50}
s1.add(60)  #只增加单个数
s1.add(10)
s1.update([10,100])  #增加的是序列
print(s1)
#删除操作
# remove() 删除集合的指定数据,数据不存在报错
# discard() 删除集合的指定数据,数据不存在也不报错
#pop() 随机删除数据,返回这个数据
s1 = {10,20,30,40,50}
# s1.remove(10)
# s1.remove(100)  报错
# s1.discard(20)
# s1.discard(20)  #再次删除也不报错
# pop:()
a = s1.pop()
print(a)
print(s1)

########集合的查找
# in 判断数据在集合序列
# not in 判断数据不在集合序列
s1 = {10,20,30,40,50}
print(10 in s1)
print(20 not in s1)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

PythonYL学习进阶

朋友,一起学习,请多多支持!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值