文章目录
- 一、元组
-
-
- 1、元组与列表的不同之处
- 2、定义一个元组
- 3、删除一个元组
- 4、元组是不可变的
-
- 二、元组的特性
-
-
- 1、索引
- 2、切片
- 3、连接(只能连接元组)
- 4、重复
- 5、成员操作符(in)
- 6、for循环(元组的遍历)
-
- 三、元组常用的函数
-
-
- 1、计数
- 2、通过元组项求索引值
-
- 四、元组的应用场景
-
-
- 1、元组的赋值
- 2、打印变量
-
一、元组
Python中,元组(tuple)和列表类似。元组写在小括号()内
,以逗号分隔
开。元组可以容纳任意数量的不同类型的元素(如整数、浮点数、字符串、列表等)。
1、元组与列表的不同之处
相同之处:list 与 tuple 都是序列类型的容器对象,可以存放任何类型的数据、支持切片、迭代等操作。
不同之处:
- 元组是不可变数据类型, 大小固定,而list是可变类型,数据可以动态变化。这就导致两者提供的方法有很大的区别。列表特有的方法(排序,插入,反转,扩展,移除,追加)都是基于原来的列表进行更新,而tuple作为不可变数据类型,同样大小的数据,初始化和迭代tuple都要快于list,tuple 占用的内存空间更少。
python -m timeit “[1,2,3,4,5]”
10000000 loops, best of 3: 0.123 usec per loopython -m timeit “(1,2,3,4,5)”
100000000 loops, best of 3: 0.0166 usec per loop a = tuple(range(1000))
b = list(range(1000))
a.sizeof()
8024
b.sizeof()
9088
- tuple用于存储异构数据,而列表一般用于存储同构数据(具有相同意义的数据)。
2、定义一个元组
- 把所有的元素以
逗号
分隔,放在小括号
内,然后赋值给一个变量,即可创建。(小括号在创建元组时不是必需的。)
(1)包含不同数据类型元素的元组
tup = "a", "b", "c", "d"
tup1 = (1,2,3,4)
tup2 = ('ran','qiuqiu','love')
(2)嵌套元组,如果元组里面包含可变的数据类型(如列表
),可以间接的通过修改列表去修改元组内容
(3)仅有一个元素的元组,元组如果只有一个元素的时候,元素后面一定要加逗号,来完成元组的声明。
如果不添加逗号,那么变量的类型是字符串。
3、删除一个元组
del tuple
>>> t = ('ran','qiuqiu','love','love',1,2,3,4,True)
>>> print (t)
('ran', 'qiuqiu', 'love', 'love', 1, 2, 3, 4, True)
>>> del t
>>> print (t)
Traceback (most recent call last):File "<stdin>", line 1, in <module>
NameError: name 't' is not defined
4、元组是不可变的
元组的不可变:是指元组所指向的内存中的内容不可变。重新赋值的元组 tup,绑定到新的对象了,不是修改了原来的对象。
>>> tup = ('ran','qiuqiu','love','love',1,2,3,4,True)
>>> id(tup) # 查看内存地址
4440687904
>>> tup = (1,2,3)
>>> id(tup)
4441088800 # 内存地址不一样了
二、元组的特性
元组中的元素没有增删改
,但是可以通过组合的方式来修改元组,元组中的元素不可以删除,但是可以使用del语句来删除整个元组
。
1、索引
- 通过使用**方括号[]包围的索引值及元组名**来访问元组中的元素,用法和对string的访问类似。
2、切片
- 可以使用切片来**打印元组中连续的值**
3、连接(只能连接元组)
>>> tup = "a", "b", "c", "d"
>>> tup1 = (1,2,3,4)
>>> tup2 = ('ran','qiuqiu','love')
>>> print(tup + tup1)
('a', 'b', 'c', 'd', 1, 2, 3, 4)>>> list = ['ranran','xixi']
>>> print(tup + list)
Traceback (most recent call last):File "<stdin>", line 1, in <module>
TypeError: can only concatenate tuple (not "list") to tuple
>>>
4、重复
5、成员操作符(in)
- 判断一个元素是否存在在于某元组中。输出的结果是布尔值。
6、for循环(元组的遍历)
三、元组常用的函数
1、计数
t.count(某元素)
2、通过元组项求索引值
四、元组的应用场景
1、元组的赋值
(1)给某元组赋值
- 元组允许左边的变量直接复制右边的元组值,但是左边变量必须与右边元素的个数相同。
- 每个变量被赋予元组中的一个值,并且可以单独访问。
(2)交换两变量的值