Python3元组

一、元组

1. 通用的元组操作

1.1 元组的创建

1.2 元组的索引

​ ​1.3 元组的切片

1.4 元组的连接和复制

2. 元组的函数

2.1 len()

2.2 max()/min()

2.3 tuple()

2.4 sorted()

3. 元组的方法

3.1 count()方法

3.2 index()方法


一、元组

元组是一种静态的或者说不可变的数据结构,里面的元素按照一定的顺序排列。与列表一样,元组也是序列,唯一的差别在于元组是不能修改的。列表用[]中括号括起,元组用圆括号()括起。

1. 通用的元组操作

1.1 元组的创建

只需在括号中添加元素,并使用逗号隔开即可(不加括号也可以)

>>> t1 = (1, 2, 3)
>>> t2 = 1, 2, 3
>>> type(t2)
<class 'tuple'>

 

空元组用两个不包含任何内容的圆括号表示

 

>>> a = ()
>>> a
()
>>> type(a)
<class 'tuple'>

注:​元组中只包含一个元素时,需要在元素后面添加逗号,否则括号会被当作运算符使用。

>>> t1 = (42)
>>> type(t1)
<class 'int'>
>>> t2 = (42,)
>>> type(t2)
<class 'tuple'>

1.2 元组的索引

元组可以使用下标索引来访问元组中的值(0表示第一个元素,-1表示最后一个元素)

>>> t1 = (1, 2, 3)
>>> t1[1]
2
>>> t1[-1]
3

​ ​1.3 元组的切片

切片通过构造一个索引号的范围可以同时获得元组中的多个值。第一个元素表示切片开始的地方(包含此索引号),第二个元素表示切片结束的地方(不包含此索引号),第三个元素表示步长,是指当取出前一项时,移动多少个元素去取下一个值(若没有这一项,默认为1),也可使用负数形式的索引号来访问元组

 

​>>> t1 = ('p', 'y', 't', 'h', 'o', 'n')
>>> t1[2:4]
('t', 'h')
>>> t1[2:5:2]
('t', 'o')
>>> t1[-1:0:-2]
('n', 'h', 'y')

1.4 元组的连接和复制

操作符可以被用来连接或复制元组。连接通过“+”来完成,复制通过“*”来完成

“+”操作符可以将两个或者多个元组连接在一起

 

​>>> t1 = ('python', 'c')
>>> t2 = ('java', 'php')
>>> c = t1 + t2
>>> c
('python', 'c', 'java', 'php')

“*”操作符可以用来复制元组

 

​>>> t1 = (1, 2, 3)
>>> t1 * 2
(1, 2, 3, 1, 2, 3)

2. 元组的函数

2.1 len()

用来计算元组的长度

 

​>>> t1 = (1, 2, 3)
>>> len(t1)
3

2.2 max()/min()

当处理数值型的元组时(包括整数和浮点数),可以使用max()和min()函数去找到某一特定元组的最大值和最小值

 

 ​>>> t1 = (1, 22, 4, 66, -59, 99)
>>> max(t1)
99
>>> min(t1)
-59

2.3 tuple()

将一个序列作为参数,并将其转换为元组。如果参数已经是元组,就原封不动地返回它。

​>>> tuple([1, 2, 3])
(1, 2, 3)
>>> tuple('python')
('p', 'y', 't', 'h', 'o', 'n')
>>> tuple((1, 2, 3))
(1, 2, 3)
>>> tuple({1, 2, 3})
(1, 2, 3)

2.4 sorted()

用于将元组排序,并不是改变元组,其返回值为一个列表

 

>>> a = (1, 5, 3, 2)
>>> t1 = (1, 5, 3, 2)
>>> t2 = sorted(t1)
>>> t1
(1, 5, 3, 2)
>>> t2
[1, 2, 3, 5]

3. 元组的方法

由于元组属于不可变类型,故其只有count()和index()方法。

3.1 count()方法

计算指定元素在元组中出现的次数。若指定元素不存在与元组中则返回0

>>> t1 = (1, 3, 1, 2)
>>> t1.count(1)
2
>>> t1.count(3)
1
>>> t1.count(5)
0

3.2 index()方法

在元组中查找指定元素。若找到则返回从左往右数第一次找到的元素的索引,找不到会报错

>>> t1 = (1, 3, 1, 2)
>>> t1.index(1)
0
>>> t1.index(8)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: tuple.index(x): x not in tuple

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值