安迪Python

V1

2022/10/04阅读:40主题:默认主题

31. Python数据类型之元组

31. Python数据类型之元组

1. Python的数据类型

Python中有8种常见的数据类型:

31-1数据类型
31-1数据类型

【数据类型数据】

1.字符串:str,用引号括起来的内容。
2.整数:int,没有小数点的数字。
3.浮点数:float,有小数点的数字。
4.布尔类型:bool,只有2个值(True 和 False)。

【容器类型的数据】

5.列表:list。
6.元组:tuple。
7.字典
8.集合

2. 什么是元组

tuple [tʌpl]:元组,数组。

元组和列表一样,是Python中的一种容器类型数据。

它可以存储ython8种数据类型中的一种,或任意几种。

元组用( )表示,元素之间用逗号分隔。

3. 元组的语法

3.1 语法

元组主要由3部分构成:

  1. 英文圆括号( )
  2. 元组元素
  3. 元素之间用英文逗号,隔开
31-2元组
31-2元组

3.2 元素

元组的元素可以是Python8种数据类型中的一种,或任意几种。

4. 新建元组

4.1 用( )新建一个空元组

英文圆括号中一个元素也没有,就是一个空元组。

# 新建一个空元组
none_tuple = ( ) 

# 查看元组
print(none_tuple )

# type函数查看数据类型
print(type(none_tuple ))

【终端输出】

()
<class 'tuple'>

<class 'tuple'>表示数据类型为元组。

none [nʌn]:无,没有,默认值。

【代码解析】

none_tuple是我给空元组起的名字。

=是赋值符号。

( ) 表示一个空元组。

4.2 元组的元素全部为整数

# 新建一个int元组
int_tuple = (1234)

# 输出元组
print(int_tuple)

# 查看元组的数据类型
print("元组的数据类型为",type(int_tuple))

【终端输出】

(1, 2, 3, 4)
元组的数据类型为 <class 'tuple'>

【代码解析】

int_tuple是我给元组起的名字。

=是赋值符号。

元组用圆括号( )表示。

1 2 3 4是元组的元素,上述元组有4个元素,元素类型均为整数。

元素之间用英文逗号,分隔。

【温馨提示】所有标点符号必须在英文输入法状态下输入,否则会报错。

5. 元组的取值

【元组和列表的相同点】

都可以存储大量数据。
都可以用索引和切片方法取值。

【元组也可以用索引和切片方法取值】

# 新建一个元组
bank_tuple = ( "浦发银行",  "招商银行",  "建设银行",  "工商银行")

# 索引取值
print("索引2取到元组的第3个元素:", bank_tuple[2])

# 切片取值
print("切片1:3取到元组的第2,3个元素:", bank_tuple[1:3])

【终端输出】

索引2取到元组的第3个元素: 建设银行
切片1:3取到元组的第2,3个元素: ('招商银行', '建设银行')

切片语法回忆:[开始字符:结束字符:步长]

【切片1:3解析】

开始字符为1,即对应元组的第2个元素招商银行

结束字符为3,即对应元组的第4个元素工商银行

这里没有步长,即默认步长为1,即连续取值;

切片含前不含后,即含第2个元素,不含第4个元素,因此取到的值为第2个元素招商银行,第3个元素建设银行

6. 元组的不可变性

【列表与元组的区别】

列表用中括号[ ],元组用圆括号( )

元组具有不可变性,即元组一经创建则不可修改。

不可变性是元组和列表最大的区别。

列表是可变数据类型,可以对列表的元素进行修改。
元组是不可变数据类型,如果试图修改元组的某个元素,程序会报错。

7. 为什么需要元组

除了元组的不可变性,元组和列表的作用和语法基本相似,很多地方都可以用元组替代列表。

相对于元组,列表更加灵活,那为什么不在所有的地方都用列表呢?

【原因如下】

  1. 元组可以作为字典的键或集合的元素,但列表不行;因为列表是可变的。

  2. 函数中利用元组传递参数或作为返回值,可以有效地避免被意外修改。

8. 只有一个元素的元组

如果元组只有1个元素,那该元素后面必须加英文逗号 ,

【圆括号中只有1个元素时,有逗号数据类型为元组】

# 新建一个只有一个元素的元组,元组后面必须加逗号
name_tuple = ('张三',)

# 查看元组
print(name_tuple)

# 查看数据类型
print(type(name_tuple))

【终端输出】

('张三',)
<class 'tuple'>

【圆括号中只有1个元素时,没有逗号数据类型为字符串】

# 括号中只有1个元素,没有逗号就是字符串
name_tuple = ('张三')

print(name_tuple)

# 查看数据类型
print(type(name_tuple))

【终端输出】

张三
<class 'str'>

9. 元组与列表的转换

9.1 元组转换成列表

【语法】

list(元组)

# 新建一个元组tuple_1
tuple_1 = ('张三'30'李四'40)

# 用list函数将元组转换成列表
print(list(tuple_1))

# 查看转换后的数据类型
print(type(list(tuple_1)))

【终端输出】

['张三', 30, '李四', 40]
<class 'list'>

9.2 列表转换成元组

【语法】

tuple(列表)

# 新建一个列表list_1
list_1 = ['张三'30'李四'40]

# 用tuple函数将列表转换成元组
print(tuple(list_1))

# 查看转换后的数据类型
print(type(tuple(list_1)))

【终端输出】

('张三', 30, '李四', 40)
<class 'tuple'>

10. 总结

元组重点掌握元组是不可变数据类型,不能进行修改即可。

分类:

后端

标签:

Python

作者介绍

安迪Python
V1