python中元組創(chuàng)建、索引訪問和元組作用詳解
一、元組的創(chuàng)建和刪除
在 Python 中,元組(tuple)是一種內(nèi)置的數(shù)據(jù)結(jié)構(gòu),用于存儲(chǔ)不可變的序列。元組通常用于存儲(chǔ)一組相關(guān)的數(shù)據(jù),這些數(shù)據(jù)在創(chuàng)建后不能被修改(即元組是不可變的)。元組使用圓括號(hào) () 來定義,并且可以包含不同類型的元素。

1.元組創(chuàng)建三種方法
你可以使用圓括號(hào)來創(chuàng)建元組,也可以使用逗號(hào)來創(chuàng)建只有一個(gè)元素的元組(如果只有一個(gè)元素而不加逗號(hào),它會(huì)被識(shí)別為普通的變量而不是元組)。
# 使用小括號(hào)創(chuàng)建元組
a = ('yuwen',25,[4,6,9],['d','k'],'yuanzu')
print(a)
#使用內(nèi)置函數(shù)tuple()創(chuàng)建元組
b = tuple('helloworld26')
print(b)
c = (5,88,69,33)
print(c)
d = tuple([1,2,3,8,9,66])
print(d)
# 逗號(hào)創(chuàng)建
e = 10,2,45,'fgh'
print(e)
# 一個(gè)元素
f = (4,)
print(f)

2.元組像序列操作
a = (11,25,69,86,34)
print('yuwen在a字符串中存在嗎?:',(10 in a))
print('d在a字符串中存在嗎?:',(15 in a))
print('o在a字符串中不存在嗎?:',(12 not in a))
print('len()', len(a) )
print('max()', max(a) )
print('min()', min(a) )
print('a.index()',a.index(69) )
print('a.count()',a.count(34))
注意如果元組元素是int和字符串,還有其他的,就使用代碼出錯(cuò),例如
a = ('yuwen', 25,[4,6,9], ['d','k'], 'yuanzu')
3.訪問元組中的元素
# 訪問元組中的第一個(gè)元素 first_element = my_tuple[0] # 訪問元組中的第三個(gè)元素 third_element = my_tuple[2]
4.元組刪除
del a print(t)
結(jié)果運(yùn)行報(bào)錯(cuò)
二、元組的訪問和遍歷
a = ('yuwen', 25,[4,6,9], ['d','k'], 'yuanzu')
# 索引訪問
print(a[2])
a1= a[0:3:2]# 切片操作
print(a1)
# 元組的遍歷
for i in a:
print(i)
print()
# len()使用
for i in range(len(a)):
print(i,a[i])
# 枚舉類型
for i,j in enumerate(a):
print(i,'------->',j)
print()
for i,j in enumerate(a,start=11):
print(i,'----->',j)

三、元組的生成式
a = (i for i in range(1,4))
print(a)
a = tuple(a)
print(a)
# 遍歷
for i in a:
print(i)

取出元素:
next() 是一個(gè)特殊方法(也稱為魔術(shù)方法或雙下方法),它定義了迭代器對(duì)象的下一個(gè)元素是如何被獲取的。當(dāng)你使用 next() 函數(shù)(或在循環(huán)中隱式地)請(qǐng)求迭代器的下一個(gè)元素時(shí),Python會(huì)在迭代器對(duì)象上調(diào)用 next() 方法。
迭代器
迭代器是一個(gè)實(shí)現(xiàn)了兩個(gè)方法 iter() 和 next() 的對(duì)象。iter() 方法應(yīng)該返回迭代器對(duì)象本身(這通常意味著迭代器對(duì)象也是可迭代對(duì)象),而 next() 方法在每次調(diào)用時(shí)應(yīng)該返回序列中的下一個(gè)元素。如果迭代器耗盡了其元素(即沒有更多元素可以返回),則 next() 方法應(yīng)該引發(fā)一個(gè) StopIteration 異常,以通知迭代終止。
a = (i for i in range(1,4)) print(a) # a = tuple(a) # print(a) # # # 遍歷 # for i in a: # print(i) print(a.__next__()) print(a.__next__()) print(a.__next__()) a = tuple(a) print(a)

四、元組和列表的區(qū)別

1.可變性
列表(List):列表是可變的,這意味著在創(chuàng)建后,你可以修改、添加或刪除其中的元素。例如,你可以使用 append()、extend()、insert()、remove() 和 pop() 等內(nèi)置方法來修改列表的內(nèi)容。
元組(Tuple):元組是不可變的,一旦創(chuàng)建,其內(nèi)容就不能被修改、添加或刪除。嘗試修改元組中的元素會(huì)引發(fā) TypeError 異常。
2.語法表示
列表:列表使用方括號(hào) [] 來定義,元素之間用逗號(hào)分隔。例如:my_list = [1, 2, 3]。
元組:元組使用圓括號(hào) () 來定義,元素之間也用逗號(hào)分隔。例如:my_tuple = (1, 2, 3)。值得注意的是,當(dāng)元組中只有一個(gè)元素時(shí),需要在元素后面加上逗號(hào)以區(qū)分單元素元組和括號(hào)內(nèi)的單個(gè)表達(dá)式。例如:(5,) 是一個(gè)元組,而 (5) 只是一個(gè)帶有圓括號(hào)的整數(shù)表達(dá)式。
3.內(nèi)存占用和性能
內(nèi)存占用:由于元組是不可變的,它們?cè)趦?nèi)存中的存儲(chǔ)效率通常比列表更高。因?yàn)椴恍枰獮榭赡艿臄U(kuò)展操作預(yù)留額外的空間。
性能:在處理大量數(shù)據(jù)時(shí),元組的性能通常比列表更好。這是因?yàn)樵M的不可變性使得它們?cè)谀承┣闆r下更易于優(yōu)化。然而,在需要頻繁修改元素的場(chǎng)景下,列表可能會(huì)比元組更快,因?yàn)榱斜頌樾薷牟僮魈峁┝烁嗟膬?nèi)置方法。
4. 用途
列表:列表更適用于需要頻繁修改、添加或刪除元素的場(chǎng)景。例如,你可以使用列表來存儲(chǔ)一組需要?jiǎng)討B(tài)變化的數(shù)據(jù)。
元組:元組通常用于存儲(chǔ)不可變的數(shù)據(jù)集。例如,它們可以作為字典的鍵、函數(shù)的參數(shù)或返回值等。由于元組的不可變性,它們還可以用于表示一些固定的配置信息或常量集合。
5. 方法支持
列表:列表提供了豐富的內(nèi)置方法來修改其內(nèi)容。例如,append() 方法用于在列表末尾添加元素,extend() 方法用于將另一個(gè)列表中的所有元素添加到當(dāng)前列表的末尾,insert() 方法用于在指定位置插入元素等。
元組:由于元組是不可變的,它們的方法較少。常用的方法包括 count()(返回指定元素在元組中出現(xiàn)的次數(shù))和 index()(返回指定元素在元組中的索引位置)。
總結(jié)
到此這篇關(guān)于python中元組創(chuàng)建、索引訪問和元組作用的文章就介紹到這了,更多相關(guān)python元組創(chuàng)建、索引訪問和作用內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python線性擬合實(shí)現(xiàn)函數(shù)與用法示例
這篇文章主要介紹了Python線性擬合實(shí)現(xiàn)函數(shù)與用法,結(jié)合實(shí)例形式分析了Python使用線性擬合算法與不使用線性擬合算法的相關(guān)算法操作技巧,需要的朋友可以參考下2018-12-12
Python實(shí)現(xiàn)端口流量轉(zhuǎn)發(fā)的示例代碼
端口流量轉(zhuǎn)發(fā)(Port Forwarding)是一種網(wǎng)絡(luò)通信技術(shù),用于將特定的網(wǎng)絡(luò)流量從一個(gè)端口或網(wǎng)絡(luò)地址轉(zhuǎn)發(fā)到另一個(gè)端口或地址,它在網(wǎng)絡(luò)中扮演著一個(gè)非常重要的角色,在Python語言中實(shí)現(xiàn)端口轉(zhuǎn)發(fā)非常容易,文中有相關(guān)的代碼示例,需要的朋友可以參考下2023-11-11
Pytorch數(shù)據(jù)讀取之Dataset和DataLoader知識(shí)總結(jié)
Dataset和DataLoader都是Pytorch里面讀取數(shù)據(jù)的工具.現(xiàn)在對(duì)這兩種工具做一個(gè)概括和總結(jié),對(duì)正在學(xué)習(xí)Pytorch的小伙伴們很有幫助,需要的朋友可以參考下2021-05-05
python 求1-100之間的奇數(shù)或者偶數(shù)之和的實(shí)例
今天小編就為大家分享一篇python 求1-100之間的奇數(shù)或者偶數(shù)之和的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-06-06
從入門到精通詳解Python函數(shù)參數(shù)全攻略
在編程的世界里,函數(shù)(Function)就像是一個(gè)精密加工的工廠,本文將帶你系統(tǒng)地拆解 Python 函數(shù)參數(shù)的奧秘,從最基礎(chǔ)的用法到進(jìn)階技巧,助你徹底攻克這一知識(shí)點(diǎn)2025-12-12
Python入門教程(四十)Python的NumPy數(shù)組創(chuàng)建
這篇文章主要介紹了Python入門教程(四十)Python的NumPy數(shù)組創(chuàng)建,NumPy 用于處理數(shù)組,NumPy 中的數(shù)組對(duì)象稱為 ndarray,我們可以使用 array() 函數(shù)創(chuàng)建一個(gè) NumPy ndarray 對(duì)象,需要的朋友可以參考下2023-05-05

