本文目錄一覽:
- 1、python裡面元組是什麼意思?
- 2、Python中的元組如何應用?
- 3、Python元組常用操作小技巧
- 4、python基礎之序列類型的方法——列表amp;元組
- 5、Python中的元組(Tuple)
- 6、Python中元組常用的方法有哪些,分別有什麼作用?
python裡面元組是什麼意思?
元組其實和列表的差距並不是很大,但是也有其獨立的特點:
①元組是一系列不可變的Python對象。元組是一種序列,就像列表一樣;列表通常用來存儲相同類型的數據;而元組在實際開發中,通常用來存儲不同類型的數據。
②元組和列表之間的主要區別是元組不能像列表那樣改變元素的值,可以簡單地理解為“只讀列表”。 元組使用小括號 -(),而列表使用方括號 -[];
③元組創建很簡單,只需要在括號中添加元素,並使用逗號隔開即可。
p class=”ztext-empty-paragraph”
創建元組:需使用逗號分隔值放入小括號的一個序列。 或者,也可以將這些逗號分隔值放在括號之間。
元組元素的訪問:請使用方括號進行指定索引切片或索引,以獲取該索引處的值。
更改元組:元組是不可變的,但是可以使用現有元組的一部分來創建新的元組。
刪除元組元素:元組中的元素值是不允許刪除的,但我們可以使用del語句來刪除整個元組。
python元組構建了對象的簡單組合,元組與列表非常相似,但元組不能在原位置修改,通常寫成包在圓括號中的一系列項,且具有列表的大多數屬性。
元組是:
任意對象的有序集合:與字符串和列表類似,元組是一個基於位置的有序對象集合,可以嵌入任何類型的對象。
通過偏移量存取:同字符串、列表一樣,元組中的元素也是通過偏移量來訪問的,支持索引和分片。
屬於“不可變序列”:與字符串相同,元組是不可變的,不支持適用於列表的任何原位置修改操作。
固定長度、多樣性、任意嵌套:元組不可變,所以不能改變元組長度,元組可以包含複合對象,支持任意嵌套。
對象引用數組:與列表相似,元組也是對象引用的數組,存儲了指向其他對象的存取點。
Python中的元組如何應用?
元組是不可變的,即元組的項不能被修改。元組用圓括號“()”括起來,並用逗號“,”來分隔其中的項。
例如,下面的元組包含了三個不同數據類型的項:
與列表不同的是,元組一旦創建就不可修改,如果嘗試修改,Python解釋器會報錯:
元組是一種序列類型,因此,上一節介紹的通用序列操作元組也都支持,此處不再贅述。下面要介紹的是元組的另外一些用法或特性。
1、 創建元組
在創建元組時,可以不用加圓括號(除非它是其他數據類型的一部分,如一個在列表中的元組,此時必須加圓括號):
可以使用元組的工廠函數tuple()創建元組。如果要創建一個空的元組,可以使用不包含任何項的圓括號或者是沒有參數的tuple()函數:
tuple()函數也可以有參數,且參數必須為可迭代對象:
創建只有一個項的元組時有個“小陷阱”,即用圓括號創建元組時,如果括號中只有一個項,而沒有逗號,那麼創建的並不是元組,而是這個項本身的類型:
創建只有一個項的元組,應該在該項的後面緊跟着一個逗號(或者使用tuple()函數):
2、 嵌套元組
元組與列表一樣,可以嵌套,同樣元組中也可以包含列表:
關於Python的基礎問題可以看下這個網頁的視頻教程,網頁鏈接,希望我的回答能幫到你。
Python元組常用操作小技巧
所以這篇文章,我們先來回顧和總結Python數據結構里常用操作。Python中常見的數據結構可以統稱為容器(container)。序列(如列表和元組)、映射(如字典)以及集合(set)是三類主要的容器。而扁平序列如str、bytes、bytearray、memoryview 和 array.array等不在這篇文章的討論範圍內。
在此,我們先從元組開始說起。
元組區別於列表的顯著特徵之一就是它不能被修改,但其另外一個作用就是 用於沒有字段名的記錄 [1] 。因為後者經常被忽略,我們先來看看元組作為記錄的作用。
使用括號就可以定義一個元組。元組中的每個元素都存放了記錄中一個字段的數據,外加這個字段的位置。正是這個位置信息給數據賦予了意義。下面的例子中,元組就被當作記錄加以利用:
輸出為:
上述for循環中的操作提取了元組中的元素,也叫作拆包(unpacking)。平行賦值是對元組拆包很好的應用,示例如下:
還有一個經典而優雅的應用是交換變量的值:
用 * 運算符把一個可迭代對象拆開作為函數的參數,例如Python的內置函數pmod接收兩個數字類型的參數,返回商和餘數。以下範例將使用 * 將元組傳入函數。
輸出為:
有些函數有多個返回值,將其賦給一個變量時,變量類型即是元組:
輸出為:
zip是Python的內置函數,能夠接收兩個或多個序列,並組成一個元組列表,在Python3中會返回一個迭代器,如下所示:
輸出為:
元組當然也支持一些常規操作,如對於元組 a = (1, ‘y’, 5, 5, ‘x’) :
上述內容不僅涵蓋了元組的基本操作,同時也結合了實際工作中常搭配使用的其他函數、運算符等。在回顧這些知識時主要參考了兩本經典的Python編程書籍:《流暢的Python》和《像計算機科學家一樣思考Python》,有興趣的朋友可以深入閱讀!
希望這篇文章對你有幫助,下回將總結Python列表的使用技巧。
[1]《流暢的Python》:
python基礎之序列類型的方法——列表amp;元組
首先登場的選手是python的列表,列表屬於可變類型,所以它將有完整的增刪改查方法,讓我們一起來看看具體是什麼。
增,顧名思意就是可以對列表進行新增元素的操作,python的列表提供了三種新增元素的操作,分別是:append() ,insert(), extend()
首先是append(),它可以將一個元素追加到列表的末尾。
舉個栗子:
上述代碼中,我們使用的是li.append(‘新增內容’)的方式來為列表添加元素
li.append()使列表li調用自身的方法append(),這樣就可以在列表的末尾添加一個新的元素。
接下來是insert(),append()是排隊,那insert()就是插隊的意思啦,它可以將一個元素插入到列表的自定位置:
li.insert(索引,元素)
這樣就將字符串helloworld插入到了列表的第四個位置里。
上面兩個方法是對單個元素進行增加,如果我們需要增加多個元素怎麼辦?
那就可以使用我們的extend()來進行添加,extend()可以將序列中的每個元素添加到末尾:
上面的代碼先定義了兩個列表l1和l2,然後使用l1.extend(l2),將l2的每個元素添加到了l1的末尾。
增加講完了,接下來進行刪除操作,刪除也有對應的四個方法:del(),pop(),remove(),clear()
del()是單獨的方法,不需要通過列表本身來進行調用,可以直接使用:
上述代碼刪除了li[0],但是請注意,如果不進行索引的話,默認會將這個變量刪除,請謹慎使用:
這就是刪除了整個變量,再打印這個變量時就會提示變量未定義
pop()方法不帶參數的話刪除默認刪除最後一個元素,帶參數的話則刪除指定的下標值:
pop()還有個神奇的地方,它可以讓你需要刪除的參數取出來繼續使用,使用完了再進行刪除:
上述代碼使用pop()刪除了第一個元素,然後使用第一個元素進行了一個簡單的判斷,說明pop()可以為我們返回刪除的元素,讓我們先使用,使用完再刪除
remove()用來刪除一個指定元素,無返回值,無法使用下標刪除:
上述代碼使用remove()刪除了一個元素l
clear()用於清空列表,與del不同的是,它會為我們保留空列表,而不會把變量都刪除:
上述代碼清除了列表後,保留了空列表
改的方法就比較簡單,直接索引出下標重新賦值即可:
這裡就對li[0]進行了重新賦值
有通過index查詢指定元素返回對應下標,也可以使用count來計算該元素出現過的次數:
除了增刪改查,列表中還有其他的方法複製copy()、倒敘排列reverse()、從小到大排列sort()
使用li.copy(),再用一個變量接收複製的列表,就可以實現複製出一個新的列表來
sort()方法可以將數字類型的進行從小到大的排列,一般也用於同類型的排列
元組作為不可變類型,只能查和刪,如果需要其他操作需要轉換成列表
只能刪除整個元組,無法使用下標值,刪除後再使用會提示沒有定義變量
元組只有查和刪的方法,如果需要修改應先轉成列表修改再轉回元組,但是不建議這麼做,因為修改過的元組就已經不是原來的那個元組了,而且設置元組也是為了這組數據不希望受到修改
以上就是關於列表元組的方法了,有興趣的小夥伴可以自己嘗試一下。
如果有哪些錯誤或者不好的地方,還請各位大佬指出來,我會虛心接受並修改錯誤,謝謝!
Python中的元組(Tuple)
在Python中,元組(Tuple)與列表(List)類似,也是一個有序的序列,但元組是一個不可變對象,其一旦初始化後便無法進行修改。
一般在創建元組時,分為創建空元組和非空元組,其創建方式如下:
從上面可以看到,我們只需要把元組的所有元素放在 小括號 () 裡面,每個元素之間通過 逗號 , 間隔起來即可,當然和列表一樣,元組中同樣允許存放不同數據類型的元素。
元組中使用的 () 是常見的數學運算符,如果參考列表的創建,如下:
從上面可以看到,我們創建出來的壓根就不是元組類型。那麼我們想創建一個只包含一個元素的元組時,需要怎麼創建呢?
很簡單,只需要在元素後加上一個 逗號 , ,這樣創建出來就是一個元組。
當我們需要訪問元組中的元素,可以類似列表一樣通過索引取值或切片取值。
如果訪問的索引不存在,那麼會報錯: IndexError: tuple index out of range
在元組中,可以像列表一樣使用切片,語法為: 元組[start:end:step] ,通過切片可以獲取到元組中指定範圍的元素,返回結果是一個新元組。在這裡,需要注意切片的規則是左閉右開,也就是說包含頭部 start,但不包含尾部 end ,而 step 則表示切片的步長,需要每間隔 step 個元素取一次。
在上面我們提到了元組是不可變的,這就意味着我們創建一個元組之後,不能再去改變其值了,比如下面這樣就會出現報錯:
假設元組中存在元素是一個可變對象,如果我們不改變元組,但改變了可變對象的值,又會得到怎麼的結果呢?請看下面實例:
從上面可以看到,元組中的第 2 個元素似乎發生了變化,這豈不是和上面說的元組不可變自相矛盾了嗎?
其實,我們說的元組不可變,指的是元組中各元素的指向永遠保持不變。在上面操作中,元組中第 2 個元素指向的一直是 列表nums ,我們改變的其實不是元組的元素,而只是改變了 列表nums 中的元素。
元組是不可變的,因此我們就不能刪除元組中的元素,但是,我們可以通過 del 語句刪除整個元組。
通過關鍵字 in ,可檢查當前元組中是否包含指定元素,返回結果為布爾值 True 或 False。
通過關鍵字 in ,還可以用於遍歷當前元組。
Python中元組常用的方法有哪些,分別有什麼作用?
元組特點:定義元組使用小括號,且逗號隔開各個數據,數據可以是不同的數據類型
如果定義的元組只有一個數據也需要加逗號,否則數據類型為唯一的這個數據的數據類型
元組中的數據是不可以刪除,修改的
如果要存儲對個數據,但這些數據是不能修改的數據就使用元組
使用方法:
1、查找 元組數據不支持修改,只支持查找
按下標查找數據
index()
count()
len()
# 1,按下標查找數據
tuplel = (‘aa’,’bb’,’cc’,’dd’)
print(tuplel[0]) # aa
# 2,index():查找某個數據,如果數據存在返回對應的下標,否則報錯,語法和列表,字符串的index方法相同
tuplel = (‘aa’,’bb’,’cc’,’bb’)
print(tuplel.index(‘aa’)) # 0
# 3,count():統計某個數據在當前元組中出現的次數
tuplel = (‘aa’,’bb’,’cc’,’bb’)
print(tuplel.count(‘bb’)) # 2
# 4,len()
print(len(tuplel)) # 4–tuplel 中有4個數據
2、修改
元組內的直接數據如果修改則立即報錯
但是如果元組裡面有列表,修改列表裡面的數據則是支持的,
t1 = (‘aa’,’bb’,’cc’,’dd’)
# t1[0] = ‘aaa’ # 直接報錯,列表數據不允許修改
t2 = (‘aa’,’bb’,[‘cc’,’dd’])
print(t2)
print(t2[2][0])
t2[2][0] = ‘xiaoguai’
print(t2)
原創文章,作者:T8E65,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/130480.html