飞道的博客

Python基础核心核心教程(018)——元祖

357人阅读  评论(0)

版权声明

  • 本文原创作者:谷哥的小弟
  • 作者博客地址:http://blog.csdn.net/lfdfhl

概述

在Python中使用元组(Tuple)存储一组信息,其特征如下:

1、使用()定义元组
2、元组中使用逗号 , 分割各元素;各元素类型可不一致。假若元组中只有一个数据,那么在该数据之后也需添加逗号 ,
3、元组的索引(下标)从0开始
4、可使用len(元组)求元组的元素个数
5、元组元素个数 = 元组索引最大值 + 1
6、通过元组[索引]的方式获取元组中的元素

示例

"""
原创作者:谷哥的小弟
博客地址:http://blog.csdn.net/lfdfhl
示例描述:元组
"""
# 定义元组
names = ("tom", "lucy", "rose", "jack")
# 类型
print(type(names))
# 获取元素个数
number = len(names)
print("元组中元素个数为:%d" % number)
# 获取元素
name0 = names[0]
print(name0)
name1 = names[1]
print(name1)
name2 = names[2]
print(name2)
name3 = names[3]
print(name3)

小结

元组与列表非常类似,最大的不同之处在于元组中的数据不可修改

元组常用方法

元组中的数据不支持修改,只支持查找。常用方法如下:

index()
在元组中查找数据,如果数据存在则返回对应的下标,否则报错。具体语法与列表中的index()类似,不再赘述。

count()
统计某数据在元组出现的次数。

示例

"""
原创作者:谷哥的小弟
博客地址:http://blog.csdn.net/lfdfhl
示例描述:元组常用方法
"""

names = ("tom", "lucy", "rose", "jack")
i = names.index("tom")
print("元素下标为:%d" % i)
c = names.count("tom")
print("元素出现次数为:%d" % c)

遍历元组

与列表类似,我们亦可使用while循环或者for循环遍历元组

示例

"""
原创作者:谷哥的小弟
博客地址:http://blog.csdn.net/lfdfhl
示例描述:遍历元组
"""

# 利用while循环遍历元组
names = ("tom", "lucy", "mimi", "jack")
i = 0
length = len(names)
while i < length:
    print(names[i])
    i = i + 1
print()

# 利用for循环遍历元组
names = ("tom", "lucy", "mimi", "jack")
for name in names:
    print(name)

元组和列表之间的转换

  • 使用 list 函数可把元组转换成列表
  • 使用 tuple 函数可把列表转换成元组

示例

"""
原创作者:谷哥的小弟
博客地址:http://blog.csdn.net/lfdfhl
示例描述:元组和列表之间的转换
"""
# 定义列表
studentList = ["tom", "lucy", "mimi", "jack"]
print(type(studentList))
# 将列表转换为元组
studentTuple = tuple(studentList)
print(type(studentTuple))

print()

# 定义元组
nameTuple = ("tom", "lucy", "mimi", "jack")
print(type(nameTuple))
# 将元组转换为列表
nameList = list(nameTuple)
print(type(nameList))

元组包含列表的场景

其实,元组中的元素还可以是其它数据结构,例如:列表。也就是说:元组中可能出现列表。

示例

"""
原创作者:谷哥的小弟
博客地址:http://blog.csdn.net/lfdfhl
示例描述:含有列表的元组
"""
names = (["tom", "lucy", "rose"], "jack")
print(names)
# 向元组中的列表追加数据
names[0].append("bush")
print(names)

小结

现在,我们再来回看之前的结论:“元组与列表非常类似,最大的不同之处在于元组中的数据不可修改”。其实,这句话不是特别的严谨。这个结论的侧重点在于元组的总体特征,而非元组的细节处理。


转载:https://blog.csdn.net/lfdfhl/article/details/105785758
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场