最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python元組 tuple的概念與基本操作詳解【定義、創(chuàng)建、訪問、計數(shù)、推導式等】

 更新時間:2019年10月30日 10:31:37   作者:閑魚!!!  
這篇文章主要介紹了Python元組 tuple的概念與基本操作,結(jié)合實例形式詳細分析了Python元組的定義、創(chuàng)建、訪問、計數(shù)、推導式等常見操作技巧與操作注意事項,需要的朋友可以參考下

本文實例講述了Python元組 tuple的概念與基本操作。分享給大家供大家參考,具體如下:

元組 tuple

元組 tuple的定義

列表屬于可變序列,可以任意修改列表中的元素。元組屬于不可變序列,不能修改元組中的
元素。因此,元組沒有增加元素、修改元素、刪除元素相關的方法。
因此,我們只需要學習元組的創(chuàng)建和刪除,元組中元素的訪問和計數(shù)即可。元組支持如
下操作:

  1. 索引訪問
  2. 切片操作
  3. 連接操作
  4. 成員關系操作
  5. 比較運算操作
  6. 計數(shù):元組長度 len()、最大值 max()、最小值 min()、求和 sum()等。

元組的創(chuàng)建

  1. 通過()創(chuàng)建元組。小括號可以省略。
a = (10,20,30) 或者 a = 10,20,30

如果元組只有一個元素,則必須后面加逗號。這是因為解釋器會把(1)解釋為整數(shù) 1,(1,)
解釋為元組。

>>> a = (1)
>>> type(a)
<class 'int'>
>>> a = (1,) #或者 a = 1,
>>> type(a)
<class 'tuple'>
  1. 通過 tuple()創(chuàng)建元組
    tuple(可迭代的對象)
    例如:
b = tuple() #創(chuàng)建一個空元組對象
b = tuple("abc")
b = tuple(range(3))
b = tuple([2,3,4])

總結(jié):
tuple()可以接收列表、字符串、其他序列類型、迭代器等生成元組。
list()可以接收元組、字符串、其他序列類型、迭代器等生成列表。

元組的元素訪問和計數(shù)

1. 元組的元素不能修改

>>> a = (20,10,30,9,8)
>>> a[3]=33
Traceback (most recent call last):
File "<pyshell#313>", line 1, in <module>
a[3]=33
TypeError: 'tuple' object does not support item assignment

2. 元組的元素訪問和列表一樣,只不過返回的仍然是元組對象。

>>> a = (20,10,30,9,8)
>>> a[1]
10
>>> a[1:3]
(10, 30)
>>> a[:4]
(20, 10, 30, 9)

3. 列表關于排序的方法 list.sorted()是修改原列表對象,元組沒有該方法。如果要對元組排

序,只能使用內(nèi)置函數(shù) sorted(tupleObj),并生成新的列表對象。

>>> a = (20,10,30,9,8)
>>> sorted(a)
[8, 9, 10, 20, 30]

zip

zip(列表 1,列表 2,…)將多個列表對應位置的元素組合成為元組,并返回這個 zip 對象。

>>> 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)]

生成器推導式創(chuàng)建元組

從形式上看,生成器推導式與列表推導式類似,只是生成器推導式使用小括號。列表推
導式直接生成列表對象,生成器推導式生成的不是列表也不是元組,而是一個生成器對象。
我們可以通過生成器對象,轉(zhuǎn)化成列表或者元組。也可以使用生成器對象的__next__()
方法進行遍歷,或者直接作為迭代器對象來使用。不管什么方式使用,元素訪問結(jié)束后,如
果需要重新訪問其中的元素,必須重新創(chuàng)建該生成器對象。
【操作】生成器的使用測試

>>> s = (x*2 for x in range(5))
>>> s
<generator object <genexpr> at 0x0000000002BDEB48>
>>> tuple(s)
(0, 2, 4, 6, 8)
>>> list(s) #只能訪問一次元素。第二次就為空了。需要再生成一次
[]
>>> s
<generator object <genexpr> at 0x0000000002BDEB48>
>>> tuple(s)
()
>>> s = (x*2 for x in range(5))
>>> s.__next__()
0
>>> s.__next__()
2
>>> s.__next__()
4

元組總結(jié)

  1. 元組的核心特點是:不可變序列。
  2. 元組的訪問和處理速度比列表快。
  3. 與整數(shù)和字符串一樣,元組可以作為字典的鍵,列表則永遠不能作為字典的鍵使用。

更多關于Python相關內(nèi)容感興趣的讀者可查看本站專題:《Python函數(shù)使用技巧總結(jié)》、《Python列表(list)操作技巧總結(jié)》、《Python字典操作技巧匯總》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python字符串操作技巧匯總》及《Python入門與進階經(jīng)典教程

希望本文所述對大家Python程序設計有所幫助。

相關文章

最新評論

衡阳市| 福清市| 安阳县| 张掖市| 肃宁县| 化州市| 马公市| 广元市| 商丘市| 荥阳市| 宜君县| 泽州县| 西平县| 始兴县| 玉树县| 横山县| 太白县| 临江市| 桦川县| 大名县| 女性| 南投市| 怀仁县| 石泉县| 西昌市| 上杭县| 华阴市| 宣汉县| 牡丹江市| 西和县| 嘉善县| 彩票| 佛山市| 襄汾县| 纳雍县| 巩留县| 什邡市| 故城县| 平塘县| 宽甸| 宁化县|