概述
元组,使用小括号()来标识,其特点是:元组中的元素不可修改
下面我们看下如何创建元组的示例:
tuple1 = (u'DeepTest', u'开源优测', u'1')
tuple2 = (1, 2, 3, 4, 5)
tuple3 = ("a", "b", "c", "d", "e")
内置函数
Python中常用的内置函数有:
- len
用于计算元组元素的个数 - max
返回元组中元素最大值 - min
返回元组中元素最小值 - tuple
将列表转换成元组
下面我们一起看看上述四个函数的示例:
# -*- coding:utf-8 -*-
__author__ = u'苦叶子'
if __name__ == "__main__":
tuple_demo = (1, 2, 3, 4, 5, 6, 7, 8, 9, 0)
# 计算tuple_demo中元素个数
print(len(tuple_demo))
# 返回tuple_demo中最大值的元素
print(max(tuple_demo))
# 返回tuple_demo中最小值的元素
print(min(tuple_demo))
# 将list转换成元组
list_demo = [1, 2, 3, 4, 5, 6]
tuple1 = tuple(list_demo)
# 打印转换后的元组
print(tuple1)
运行结果如下:
10
9
0
(1, 2, 3, 4, 5, 6)
切片
因为元组也是一个序列,所以我们可以使用Python的切片机制来访问元组中指定位置的元素,也可以截取其中的一段元素。
下面我们一起看看切片操作的示例:
# -*- coding:utf-8 -*-
__author__ = u'苦叶子'
if __name__ == "__main__":
print(u"元组切片操作示例!")
data_demo = (u"DeepTest", u"appium", u"", u"hello", u"python3")
# 读取第二个元素appium, 注意索引下标从0开始
e = data_demo[1]
print(e)
# 读取倒数第二个hello
e = data_demo[-2]
print(e)
# 切片,截取从第2个元素开始后的所有元素
e = data_demo[1:]
print(e)
# 切片,截取第2-4个元素
e = data_demo[1:4]
print(e)
执行结果如下
元组切片操作示例
appium
hello
('appium', '', 'hello', 'python3')
('appium', '', 'hello')
对上面的代码小结一下:
- 元组可以通过下标索引的方式来读取元素
- 元组可以通过负数下标索引的方式反向读取元素
- 元组可以通过 起始:终止 方式截取一段元素
合并
元组的元素的特性:不可修改。但我们可以对元组进行合并或是连接生成新的元组,代码示例如下:
# -*- coding:utf-8 -*-
__author__ = u'苦叶子'
if __name__ == "__main__":
print(u"元组合并或连接操作示例!")
tup1 = (u"DeepTest", u"appium")
tup2 = (u"", u"hello", u"python3")
# 合并成新的元组
tup3 = tup1 + tup2
# 打印看看效果
print(tup1)
print(tup2)
print(tup3)
删除
元组的元素的特性:不可修改。意味着我们不可以删除单个元素,但可以把元组给删除,示例如下:
# -*- coding:utf-8 -*-
__author__ = u'苦叶子'
if __name__ == "__main__":
print(u"元组合并或连接操作示例!")
tup1 = (u"DeepTest", u"appium")
print(tup1)
# 删除元组
del tup1
print(tup1)
执行上述代码会出什么情况呢?
会提示输出异常信息,提时:
NameError: name 'tup1' is not defined
运算
元组和字符串一样可以使用+或*进行运算,经过运算后可以生成一个新的元组。
# -*- coding:utf-8 -*-
__author__ = u'苦叶子'
if __name__ == "__main__":
print(u"元组运算示例")
tup1 = (u"DeepTest", u"开源优测")
tup2 = (1, 2, 3, 4)
# 计算元组长度
print(len(tup1))
# 元组连接
tup3 = tup1 + tup2
print(tup3)
# 元组复制
tup4 = tup1 * 2
print(tup4)
# 判断元素是否在元组中, 是则返回True, 否则返回
result = 5 in tup2
print(result)
# 遍历元组
for t in tup2:
print(t)
列表转元组
使用内置函数tuple将list转换成元组,代码示例如下:
# -*- coding:utf-8 -*-
__author__ = u'苦叶子'
if __name__ == "__main__":
# 将list转换成元组
list_demo = [1, 2, 3, 4, 5, 6]
tuple1 = tuple(list_demo)
# 打印转换后的元组
print(tuple1)