在大型的商業或者遊戲網站中,列表式非常重要的數據類型,因爲列表可以隨時變動或者更新數據。而元組(tuple),這種數據類型結構與列表完全相同,但是與列表最大的差異是,他的元素值和元素個數不可更改,有時也稱作不可更改的列表。
定義
列表將元素放在中括號內,元組放在小括號內“()”
info_tuple = ("zhangsan", 18, 1.75, "zhangsan")
元組基本使用
info_tuple = ("zhangsan", 18, 1.75, "zhangsan")
# 1. 取值和取索引
print(info_tuple[0])
# 已經知道數據的內容,希望知道該數據在元組中的索引
print(info_tuple.index("zhangsan"))
# 2. 統計計數
print(info_tuple.count("zhangsan"))
# 統計元組中包含元素的個數
print(len(info_tuple))
元組的遍歷
info_tuple = ("zhangsan", 18, 1.75)
# 使用迭代遍歷元組
for my_info in info_tuple:
# 使用格式字符串拼接 my_info 這個變量不方便!
# 因爲元組中通常保存的數據類型是不同的!
print(my_info)
格式化字符串
info_tuple = ("小明", 21, 1.85)
# 格式化字符串後面的 `()` 本質上就是元組
print("%s 年齡是 %d 身高是 %.2f" % info_tuple)
info_str = "%s 年齡是 %d 身高是 %.2f" % info_tuple
print(info_str)
可以使用全新定義方式修改元組元素
元組的元素不可以修改,但是我們可以進行重新定義對原始數據進行覆蓋。
# -*- coding: utf-8 -*-
# @Date: 2020/1/20 21:21
# @Author: Blueheart
# @Blog: https://blog.csdn.net/shengshengshiwo
info_tuple = ("zhangsan", 18, 1.75, "zhangsan")
print("原始元祖元素:")
for my_info in info_tuple:
# 使用格式字符串拼接 my_info 這個變量不方便!
# 因爲元組中通常保存的數據類型是不同的!
print(my_info)
info_tuple = ("wangdazhu", 22, 177)
print("修改後的元組元素:")
for my_info in info_tuple:
print(my_info)
方法與函數
應用在列表上的方法和函數如果不會更改元組的內容,則可以將他應用在元組上,如len()
。如果會更改元組的內容,則不可以將他應用到元組,如append()
、insert()
或者pop()
。
info_tuple = ("zhangsan", 18, 1.75, "zhangsan")
print("info_tuple元組的長度是:%d" % len(info_tuple))
info_tuple = ("zhangsan", 18, 1.75, "zhangsan")
info_tuple.append("dadada")
列表與元組數據轉換
元組已經轉換成列表,可以使用append()
方法。
info_tuple = ("zhangsan", 18, 1.75, "zhangsan")
list_info_tuple = list(info_tuple)
print(list_info_tuple)
list_info_tuple.append("dadada")
print(list_info_tuple)
元組不支持append()
方法,報錯。
info_tuple = ("zhangsan", 18, 1.75, "zhangsan")
list_info_tuple = tuple(info_tuple)
print(list_info_tuple)
list_info_tuple.append("dadada")
print(list_info_tuple)