python的tuple()元組數據類型的使用方法以及案例


 一、元組的概念介紹

1、元組是列表的二次加工

列表可以被修改

列表的類型 

list

li = [1,2,3,4,5,6]

2、元組的元素不可被修改,不能被增加或者刪除,(只是針對元組的一級元素是不可以修改的,元組里面的二級列表元素是可以被修改的,就是元組里面嵌套着列表)可以被for循環,所以元組也是一個可迭代對象,元組也是有序的

元組的類型

tuple

tu = (1,2,3,4,5,6)

3、元組可以包含 數字、字符串,列表,元組

   在寫元組的時候在末尾一定要加一個,   逗號,不然區分不出來是參數還是元組

   比如下面這個是個參數跟元組是一樣的都是()

   我們自己在寫代碼的時候在元組末尾加個逗號,就能區分出來了

sort(self, key=None, reverse=False)

tu = (11,"22","gouguoqi",(33,99),[66,"77"],True,)
print (tu)

C:\python35\python3.exe D:/pyproject/day12列表/tuple.py

(11, '22', 'gouguoqi', (33, 99), [66, '77'], True)

4、通過索引獲取元組內的元素

tu = (11, "22", "gouguoqi", (33, 99), [66, "77"], True,)
v = tu[1]
print(v)

C:\python35\python3.exe D:/pyproject/day12列表/tuple.py

22 

如何取到元組里面的嵌套的列表里面的的元素的元素

tu = ("11","22",["33",("ae",66,"99",),90])
v = tu[2][1][2]
print  (v)

C:\python35\python3.exe D:/pyproject/day12列表/tuple.py

99

5、通過切片獲取元組內一個范圍內的元素

tu = (11, "22", "gouguoqi", (33, 99), [66, "77"], True,)
v = tu[1:5]             大於等於1小於5
print(v)

C:\python35\python3.exe D:/pyproject/day12列表/tuple.py

('22', 'gouguoqi', (33, 99), [66, '77'])

6、可以被for循環,所以元組也是一個可迭代對象(字符串、列表、元組都是)

tu = (11, "22", "gouguoqi", (33, 99), [66, "77"], True,)
for n in tu:
    print (n)

C:\python35\python3.exe D:/pyproject/day12列表/tuple.py

11

22

gouguoqi

(33, 99)

[66, '77']

True

二、字符串、列表、元組 之間的相互轉換

我們之前把數字轉換成字符串是這樣寫 S = str(a)  a是數字,S是轉換成的結果

我們之前把字符串換成數字是這樣寫   S = int(a)  a是字符串,S是轉換成的結果

把字符串換成列表就是               S = list(a)  a是字符串,S是轉換成的結果

把列表轉換成字符串                 S = str(a)   a是列表,S是轉換成的結果

  (1)將字符串轉換為元組

S = "gouguoqi"
v = tuple(S)
print (v)

C:\python35\python3.exe D:/pyproject/day12列表/tuple.py

('g', 'o', 'u', 'g', 'u', 'o', 'q', 'i')

 (2)將列表轉換為元組

li = ["beiye",22,33]
v = tuple(li)
print (v)

C:\python35\python3.exe D:/pyproject/day12列表/tuple.py

('beiye', 22, 33)

(3)將元組轉換為列表

tu = ("miaoye",66,77)
v = list(tu)
print (v)

C:\python35\python3.exe D:/pyproject/day12列表/tuple.py

['miaoye', 66, 77]

(4)將元組轉換為字符串(跟列表轉換為字符串一樣)

第一種方法,自己寫for循環,一個一個的循環,因為元素中既有數字,又有字母,                所以得定義一個空,然后循環的時候轉換成str類型,才能進行相加,一個一個的循環,最    后把a打印出來

tu = ("miaoye",66,77)
v = str(tu)
print (type(v),v)

C:\python35\python3.exe D:/pyproject/day12列表/tuple.py

<class 'str'> ('miaoye', 66, 77)

雖然是一個字符串的類型了,但是結果不是我們想要的,所以我們得自己寫for循環了

 

tu = ("miaoye", 66, 77)
a = ""
for n in tu:
    b = str(n)
    a += b
# a = a + b
print(a)

C:\python35\python3.exe D:/pyproject/day12列表/tuple.py

miaoye6677
 

第二種方法,當元組里面都是字符串的時候,我們就可以用join的方法進行拼接了,有數字就不能用join了,就得用上面的自己寫for循環了

 

tu = ("miaoye","gou")
v = "_".join(tu)
print (v)

C:\python35\python3.exe D:/pyproject/day12列表/tuple.py

miaoye_gou

 

7.修改元組里面的二級列表中的元素  *****重要

tu = ("11", "22", ["33", ("ae", 66, "99",), 90])
tu[2][0] = "333"
print(tu)

C:\python35\python3.exe D:/pyproject/day12列表/tuple.py

('11', '22', ['333', ('ae', 66, '99'), 90])

8.元組這里就提供了2個方法

(1)count(self, value)    計數
計算指定的元素在元組里面出現了幾次
T.count(value) -> integer -- return number of occurrences of value

T = ("11","22","33","11","woai")
v = T.count("11")
print (v)

C:\python35\python3.exe D:/pyproject/day12列表/tuple.py

2
(2)index(self, value, start=None, stop=None)

找到第一個指定的元素的索引之后就不再繼續往下找了,也可以指定范圍

 

T.index(value, [start, [stop]]) -> integer -- return first index of value.
Raises ValueError if the value is not present.

 
T = ("11","22","33","11","22","woai")
v = T.index("22")
print (v)

C:\python35\python3.exe D:/pyproject/day12列表/tuple.py

1

 

 

 

10、元組的in操作,判斷元素是否包含在元組中

T = ("11","22",33)
v = 33 in T
print (v)

C:\python35\python3.exe D:/pyproject/day12列表/dict-way.py

True


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM