组合数据类型

本文详细介绍了Python中的组合数据类型,包括集合类型、序列类型(如列表、元组)和映射类型(如字典)。讨论了它们的基本概念、操作方法和常见用途,如集合的交并差补运算、列表的索引、切片和操作函数,以及字典的键值对操作。此外,还提出了课后习题,涉及字符频率统计和随机密码生成等实际应用。
摘要由CSDN通过智能技术生成

知识导图

在这里插入图片描述

组合数据类型的基本概念

Python语言中最常用的组合数据类型有3大类,分别是集合类型、序列类型和映射类型。

集合类型概述

集合类型是一个元素集合,是无序组合,用大括号{}表示,集合中的元素可以动态的增加或减少。集合中的元素不可重复,元素类型只能是不可变数据类型,如:整数、浮点数、字符串、元组等,相比而言,列表、字典和集合类型本身都是可变数据类型,不可作为集合的元素。
集合的输出顺序与定义顺序可以不一样,由于集合元素是独一无二的 ,使用集合类型可以过滤掉重复元素。

T={
   "1010",12.3,1010}
print(T)

结果

{
   12.3, 1010, '1010'}
T={
   "1010",12.3,1010,1010,1010}
print(T)

结果

{
   '1010', 12.3, 1010}

集合类型有4个操作符,交集(&),并集(|),差集(-),补集(^),如下表
在这里插入图片描述
集合类型有一些常用的操作函数或方法,如下表
在这里插入图片描述
set(x)函数将其他的组合数据类型变成集合类型,set()函数也可以生成空集合变量。

S=set('知之为知之不知为不知')
print(S)
for i in S:
    print(i,end="")

结果

{
   '不', '之', '为', '知'}
不之为知

序列类型概述

序列类型是一维元素向量,元素之间存在先后关系,通过序号访问。本语言中又很多数据类型都是序列类型,比较重要的是字符串类型、列表类型和元组类型。
序列类型通用操作符和函数。如下表
在这里插入图片描述
元组类型是序列类型的重要组成之一。

t=(1,2,3)
print(type(t))

结果

<class 'tuple'>

元组一旦定义就不能修改。因此在一些编程中,通常以列表类型替代元组类型使用。元组类型主要在Python语法相关的场景使用。例如,当函数返回多个值时,多个返回值以元组类型返回,实际上是返回一个数据类型。

def f(x):
    return x,x+1,x+2
print(f(1))
print(type(f(1)))

结果

(1, 2, 3)
<class 'tuple'>

映射类型概述

映射类型是“键—值”数据项组合,即元素(key,value),元素之间是无序的。

列表类型

列表的定义

列表是有序序列,属于序列类型。列表可以进行元素的增加,删除,替换、查找等操作。元素类型可以不同。可通过list(x)函数将集合或字符串类型转换成列表类型。
list()函数可生成空列表。

print(list('列表可由字符串生成'))

结果

['列', '表', '可', '由', '字', '符', '串', '生', '成']

列表的索引

索引号不能超过列表的元素范围,否会产生IndexError错误。

>>> ls=[1010,"1010",[1010,"1010"],1010]
>>> ls[3]
1010
>>> ls[-2]
[1010, '1010']
>>> ls[5]
Traceback (most recent call last):
  File "<pyshell#3>", line 1, in <module>
    ls[5]
IndexError: list index out of range
</
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值