07元组、字典和集合

本文介绍了Python中的三种重要数据结构——元组、字典和集合。元组是不可变序列,常用于存储不可变数据。字典是一种映射数据结构,提供快速的键值对查找。集合是不包含重复元素的无序序列,支持多种数学运算如交集、并集和差集。文章详细讲解了它们的创建、使用及操作方法。
摘要由CSDN通过智能技术生成

要熟练掌握元组、字典和集合的不同功能的方法

1.元组简介

  • 元组是不可变序列,通过()可以创建,或者不用()而直接用‘,’将各个元素分隔开也可以
tup=()
print(tup,type(tup))  # () <class 'tuple'>

tup=1,2,3,4,5
print(tup,type(tup))  # (1, 2, 3, 4, 5) <class 'tuple'>
tup=1,2,3,4,5,
print(tup,type(tup))  # (1, 2, 3, 4, 5) <class 'tuple'>

tup=(1,2,3,4,5)
print(tup.index(1)) # 0  返回了1的索引值

print(tup[1]) # 2  注意这里依然是[]来调用,tup[1]是索引为1的元组的值
print(tup) # (1,2,3,4,5)  注意这里tup是一个变量对象
tup[1]=9  # 不可变序列给序列重新赋值是不允许的  TypeError: 'tuple' object does not support item assignment
tup=9	# 这是给变量对象重新赋值,是允许的
''' 
将元组的元素赋值给变量的过程就叫做解包
——赋值时变量个数与元组内的元素个数必须保持一致
——如果元组元素在解包时不逐个分解,可通过*c的方式可以将多个元素放入列表中
——字符串和列表同样适用这些解包的方法
'''
tup=10,20,30,40
a,b,c=tup  #  ValueError: too many values to unpack (expected 3)
a,b,c,d,e=tup   #   ValueError: not enough values to unpack (expected 5, got 4)
a,b,c,d=tup  #	变量个数与元组内的元素个数必须保持一致
'''变量个数与元组内的元素个数必须不一致时采用以下方法'''
a,b,*c=tup          #   a=tup[0],b=tup[1],*c表示剩下的都给了列表c,c=[tup[2],tup[3]]
a,*b,c=tup          #   a=tup[0],c=tup[3],*b表示剩下的都给了列表b,b=[tup[1],tup[2]]
*a,b,c=tup          #   b=tup[2],c=tup[3],*a表示剩下的都给了列表a,a=[tup[0],tup[1]]
# 以下打印结果是省略版
print('a =',a)      #   a = 10      a = 10      a = [10, 20]
print('b =',b)      #   b = 20      b = [20, 30]        b = 30
print('c =',c)      #   c = [30, 40]        c = 40      c = 40
''' 遍历、索引、切片、解包等方式在列表、字符串、元组中都是可以通用的,这些操作本质上都没有对原来序列进行变更 '''
# 字符串的解包
a,b,*c='python'
print('a =',a)      #   a = p
print('b =',b)      #   b = y
print('c =',c)      #   c = ['t', 'h', 'o', 'n']

# 列表的解包
a,b,*c=[1,2,3,4,5,6,7,7]
# a,*b,*c=[1,2,3,4,5,6,7,7]    # 不能出现多个*  SyntaxError: two starred expressions in assignment
print('a =',a)      #   a = 1
print('b =',b)      #   b = 2
print('c =',c)      #   c = [3, 4, 5, 6, 7, 7]

2.字典简介

2.1字典的基本介绍
  • 字典属于一种新的数据结构,被称之为映射(mapping)
  • 字典的作用和列表类似,都是用来存储对象的一种容器
  • 列表对数据的存储比较在好,但数据的查询检索则相对差一些,而字典正好与之相反
  • 字典中的每一个元素都有一个唯一的名字,通过这个名字可以快速查找到指定元素
  • 唯一的名字被称之为Key,通过key来查询的值称之为Value,键值对(Key—Value)一项成为Item
'''
创建字典{}
语法:{key:value,key:value,....}
创建字典dict()
语法:dict(key=value,key=value,....)
字典的value可以是任意的对象
字典的key是不可变的对象,如int、str、bool、tuple...
'''
d={
   }
print(d,type
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值