日期:2019年11月24日
作者:Commas
注释:学习就是为了忘记,让我们来总结一下Python3元组的定义、2个元组方法的使用、5种元组遍历的方法、元组与列表的互相转换…
如果您想了解更多有关Python的知识,那么请点【我】
《我的Python浅谈系列目录》
一、元组的定义
元组(Tuple)
和列表类似,是有序的
的元素集合,每个元素都会分配一个数字,这个数字就是对应元素在元组的索引,即“元组[索引] = 元素”。切记,元组是可变 (不可变)不可变的
,所以
1、元组的元素是不可以修改
的;
2、元组的元素是不可以删除
的。
# 定义空元组
empty_tuple = ()
# 定义一个元素的元组(逗号不能省略)
name_tuple = ("Commas",)
# 定义多个元素的元组
num_tuple = (111, 222, 333)
num_tuple[0] # 值为111
num_tuple[1] # 值为222
num_tuple[2] # 值为333
二、元组的方法
获取“元组方法”的方法如下:
Python语句:print(dir(()))
控制台输出:
[‘add’, ‘class’, ‘contains’, ‘delattr’, ‘dir’, ‘doc’, ‘eq’, ‘format’, ‘ge’, ‘getattribute’, ‘getitem’, ‘getnewargs’, ‘gt’, ‘hash’, ‘init’, ‘init_subclass’, ‘iter’, ‘le’, ‘len’, ‘lt’, ‘mul’, ‘ne’, ‘new’, ‘reduce’, ‘reduce_ex’, ‘repr’, ‘rmul’, ‘setattr’, ‘sizeof’, ‘str’, ‘subclasshook’, ‘count’, ‘index’]
count(object)
Return number of occurrences of value.
统计某个元素在元组中出现的次数
num_tuple = (111, 222, 333, 222, 111)
count = num_tuple.count(111)
print("元组中有%d个111" % count)
# 控制台输出:
# 元组中有 2 个111
index(object)
Return first index of value.
Raises ValueError if the value is not present.
从元组中找出某个值第一个匹配项的索引位置
若值不存在,则抛出异常。
num_tuple = (111, 222, 333, 222, 111)
index = num_tuple.index(222)
print("元组中元素222最小的索引值为 %d" % (index,))
print(num_tuple.index(123)) #不存在,抛出异常
# 控制台输出:
# 元组中元素222最小的索引值为 1
# File "D:test.py", line 4, in <module>
# print(num_tuple.index(123))
# ValueError: tuple.index(x): x not in tuple
如果想比较系统的了解Python
字符串格式化
,请看《Python3之字符串格式化浅谈》
三、元组的遍历
num_list = [111, 222, 333]
for num in num_tuple:
print(num)
控制台输出:
111
222
333
元组的5种遍历方法,我在这就不再赘述了,和列表的遍历方法一样。请看《Python3之列表(List)浅谈》
四、元组与列表的互相转换
- 元组转换成列表,使用
list()函数
num_tuple = (111, 222, 333)
num_list = list(num_tuple) # 转成成列表
print("num_list 的数据类型是 {0}".format(type(num_list)))
控制台输出结果:
num_list 的数据类型是 <class ‘list’>
- 列表转换成元组,使用
tuple()函数
num_list = [111, 222, 333]
num_tuple = tuple(num_tuple) # 转成成元组
print("num_tuple 的数据类型是 {0}".format(type(num_tuple)))
控制台输出结果:
num_tuple 的数据类型是 <class ‘tuple’>
本文参考:
1、https://www.runoob.com/python/python-tuples.html
版权声明:本文为博主原创文章,如需转载,请给出:
原文链接:https://blog.csdn.net/qq_35844043/article/details/103225272