python元组的创建取值排序计数_Python元组 tuple的概念与基本操作详解【定义、创建、访问、计数、推导式等】...
本文實(shí)例講述了Python元組 tuple的概念與基本操作。分享給大家供大家參考,具體如下:
元組 tuple
元組 tuple的定義
元組的創(chuàng)建
元組的元素訪問(wèn)和計(jì)數(shù)
1. 元組的元素不能修改
2. 元組的元素訪問(wèn)和列表一樣,只不過(guò)返回的仍然是元組對(duì)象。
3. 列表關(guān)于排序的方法 list.sorted()是修改原列表對(duì)象,元組沒(méi)有該方法。如果要對(duì)元組排
zip
生成器推導(dǎo)式創(chuàng)建元組
元組總結(jié)
元組 tuple的定義
列表屬于可變序列,可以任意修改列表中的元素。元組屬于不可變序列,不能修改元組中的
元素。因此,元組沒(méi)有增加元素、修改元素、刪除元素相關(guān)的方法。
因此,我們只需要學(xué)習(xí)元組的創(chuàng)建和刪除,元組中元素的訪問(wèn)和計(jì)數(shù)即可。元組支持如
下操作:
索引訪問(wèn)
切片操作
連接操作
成員關(guān)系操作
比較運(yùn)算操作
計(jì)數(shù):元組長(zhǎng)度 len()、最大值 max()、最小值 min()、求和 sum()等。
元組的創(chuàng)建
通過(guò)()創(chuàng)建元組。小括號(hào)可以省略。
a = (10,20,30) 或者 a = 10,20,30
如果元組只有一個(gè)元素,則必須后面加逗號(hào)。這是因?yàn)榻忉屍鲿?huì)把(1)解釋為整數(shù) 1,(1,)
解釋為元組。
>>> a = (1)
>>> type(a)
>>> a = (1,) #或者 a = 1,
>>> type(a)
通過(guò) tuple()創(chuàng)建元組
tuple(可迭代的對(duì)象)
例如:
b = tuple() #創(chuàng)建一個(gè)空元組對(duì)象
b = tuple("abc")
b = tuple(range(3))
b = tuple([2,3,4])
總結(jié):
tuple()可以接收列表、字符串、其他序列類型、迭代器等生成元組。
list()可以接收元組、字符串、其他序列類型、迭代器等生成列表。
元組的元素訪問(wèn)和計(jì)數(shù)
1. 元組的元素不能修改
>>> a = (20,10,30,9,8)
>>> a[3]=33
Traceback (most recent call last):
File "", line 1, in
a[3]=33
TypeError: 'tuple' object does not support item assignment
2. 元組的元素訪問(wèn)和列表一樣,只不過(guò)返回的仍然是元組對(duì)象。
>>> a = (20,10,30,9,8)
>>> a[1]
10
>>> a[1:3]
(10, 30)
>>> a[:4]
(20, 10, 30, 9)
3. 列表關(guān)于排序的方法 list.sorted()是修改原列表對(duì)象,元組沒(méi)有該方法。如果要對(duì)元組排
序,只能使用內(nèi)置函數(shù) sorted(tupleObj),并生成新的列表對(duì)象。
>>> a = (20,10,30,9,8)
>>> sorted(a)
[8, 9, 10, 20, 30]
zip
zip(列表 1,列表 2,…)將多個(gè)列表對(duì)應(yīng)位置的元素組合成為元組,并返回這個(gè) zip 對(duì)象。
>>> a = [10,20,30]
>>> b = [40,50,60]
>>> c = [70,80,90]
>>> d = zip(a,b,c)
>>> list(d)
[(10, 40, 70), (20, 50, 80), (30, 60, 90)]
生成器推導(dǎo)式創(chuàng)建元組
從形式上看,生成器推導(dǎo)式與列表推導(dǎo)式類似,只是生成器推導(dǎo)式使用小括號(hào)。列表推
導(dǎo)式直接生成列表對(duì)象,生成器推導(dǎo)式生成的不是列表也不是元組,而是一個(gè)生成器對(duì)象。
我們可以通過(guò)生成器對(duì)象,轉(zhuǎn)化成列表或者元組。也可以使用生成器對(duì)象的__next__()
方法進(jìn)行遍歷,或者直接作為迭代器對(duì)象來(lái)使用。不管什么方式使用,元素訪問(wèn)結(jié)束后,如
果需要重新訪問(wèn)其中的元素,必須重新創(chuàng)建該生成器對(duì)象。
【操作】生成器的使用測(cè)試
>>> s = (x*2 for x in range(5))
>>> s
at 0x0000000002BDEB48>
>>> tuple(s)
(0, 2, 4, 6, 8)
>>> list(s) #只能訪問(wèn)一次元素。第二次就為空了。需要再生成一次
[]
>>> s
at 0x0000000002BDEB48>
>>> tuple(s)
()
>>> s = (x*2 for x in range(5))
>>> s.__next__()
0
>>> s.__next__()
2
>>> s.__next__()
4
元組總結(jié)
元組的核心特點(diǎn)是:不可變序列。
元組的訪問(wèn)和處理速度比列表快。
與整數(shù)和字符串一樣,元組可以作為字典的鍵,列表則永遠(yuǎn)不能作為字典的鍵使用。
更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python函數(shù)使用技巧總結(jié)》、《Python列表(list)操作技巧總結(jié)》、《Python字典操作技巧匯總》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python字符串操作技巧匯總》及《Python入門與進(jìn)階經(jīng)典教程》
希望本文所述對(duì)大家Python程序設(shè)計(jì)有所幫助。
總結(jié)
以上是生活随笔為你收集整理的python元组的创建取值排序计数_Python元组 tuple的概念与基本操作详解【定义、创建、访问、计数、推导式等】...的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: python中顺序查找法例子_Pytho
- 下一篇: python圆的半径计算圆的周长列表_p