元組:
元組維持元素定義的順序。
元組一旦創建,其內容就無法變更。
與列表一樣,元組可以包含重複的值。
元組可以儲存混合類型的數據,包括其他元組、列表、整數、字串等
您可以透過索引存取元組元素,從 0 開始。
由 () 表示的元組。
t = (10,20,30) print(t) print(type(t)) for num in t: print(num) total = 0 for num in t: total+=num print(total) t[0] = 100
(10, 20, 30) <class 'tuple'> 10 20 30 60 TypeError: 'tuple' object does not support item assignment
元組包裝:
透過將多個元素分組在一起來建立元組,例如 my_tuple = (1, 2, 3).
元組拆包:
將元組的元素提取到各個變數中,例如,a, b, c = my_tuple。
#Tuple Packing t = 10,20,30 print(t) #Tuple Unpacking no1, no2, no3 = t print(no1) print(no2) print(no3)
(10, 20, 30) 10 20 30
t = 10,20,30,40,50,60 print(t[:2])
(10, 20)
t1 = 10,20,30 t2 = 40,50,60 print(t1+t2) print(t1*3) print(10 in t1) print(10 not in t1)
(10, 20, 30, 40, 50, 60) (10, 20, 30, 10, 20, 30, 10, 20, 30) True False
t1 = 10,20,30,40,50,60,10 print(t1.count(10)) print(t1.index(20)) print(sorted(t1)) print(sorted(t1,reverse=True))
2 1 [10, 10, 20, 30, 40, 50, 60] [60, 50, 40, 30, 20, 10, 10]
t = ((10,20,30), (40,50,60)) print(t) print(t[0]) print(t[1]) print(t[0][0]) print(t[1][2]) t = ([10,20,30],[40,50,60]) print(t[0]) print(t[0][2])
((10, 20, 30), (40, 50, 60)) (10, 20, 30) (40, 50, 60) 10 60 [10, 20, 30] 30
寫一個程式來找
a)第二個列表
b) 列出總計
c) 僅列印每個清單中的第二個元素。
資料 = ([10,20,30],[40,50,60],[70,80,90])
data = ([10,20,30],[40,50,60],[70,80,90]) #Second List print(data[1]) #List wise total for inner in data: total = 0 for num,index in enumerate(inner): total+=index print(total,end=' ') #Print Only second element from each list. print() i=0 while i<len(data): print(data[i][1],end=' ') i+=1
[40, 50, 60] 60,150,240, 20 50 80
eval():
eval() 是一個內建的 Python 函數,用於將字串計算為 Python 表達式並傳回結果。
沒有元組理解。
t = eval(input("Enter tuple Elements: ")) print(type(t)) print(t)
Enter tuple Elements: 10,20,30 <class 'tuple'> (10, 20, 30)
next() 函數:
next() 函數傳回迭代器中的下一個項目。
t = (no for no in range(1,11)) print(next(t)) print(next(t)) print(next(t)) print(next(t))
1 2 3 4
*「is」與「==」的差異:*
“==”被稱為相等運算符。
「is」稱為恆等運算子。
== 檢查值。
是檢查記憶體。
== 運算子幫助我們比較物件的相等性。
is 運算子幫助我們檢查不同的變數是否指向記憶體中的相似物件。
範例:
列表:
l1 = [10,20,30] l2 = l1 print(id(l1)) print(id(l2)) print(l1 == l2) print(l1 is l2) l2 = list(l1) print(id(l2)) print(l1 == l2) print(l1 is l2)
124653538036544 124653538036544 True True 124653536481408 True False
對於元組:
l1 = (10,20,30) l2 = l1 print(id(l1)) print(id(l2)) print(l1 == l2) print(l1 is l2) l2 = tuple(l1) print(id(l2)) print(l1 == l2) print(l1 is l2)
130906053714624 130906053714624 True True 130906053714624 True True
元組與列表:
元組是不可變對象,列表是可變對象。
元組使用的記憶體較少,並且存取速度比列表更快。
由於元組是不可變的,因此大小將小於列表。
範例:
import sys l = [10,20,30,40] t = (10,20,30,40) print(sys.getsizeof(l)) print(sys.getsizeof(t))
88 72
設定:
集合用於在單一變數中儲存多個項目。
集合是無序、不可變(不可更改)且無索引的集合。
它忽略重複項。
設定方法:
1)union():(|)傳回包含集合並集的集合。
2)intersection():(&)傳回一個集合,即其他兩個集合的交集。
3)difference():(-)傳回包含兩個或多個集合之間差異的集合。
4)symmetry_difference():(^)傳回兩個集合的對稱差異的集合。
範例:1
t = (10,20,30) print(t) print(type(t)) for num in t: print(num) total = 0 for num in t: total+=num print(total) t[0] = 100
(10, 20, 30) <class 'tuple'> 10 20 30 60 TypeError: 'tuple' object does not support item assignment
範例:2
#Tuple Packing t = 10,20,30 print(t) #Tuple Unpacking no1, no2, no3 = t print(no1) print(no2) print(no3)
(10, 20, 30) 10 20 30
丟棄():
Discard() 方法從集合中刪除元素(如果存在)。如果該元素不存在,則不會執行任何操作(不會引發錯誤)。
刪除():
如果元素存在,remove() 方法會從集合中刪除該元素。如果該元素不存在,則會引發 KeyError。
t = 10,20,30,40,50,60 print(t[:2])
(10, 20)
任務:
match1 = {"sanju", "virat", "ashwin", "rohit"}
match2 = {"dhoni", "virat", "bumrah", "siraj"}
找到以下:
a) 匹配 1、匹配 2
b)參加了第一場比賽,但沒有參加第二場比賽
c)參加了第 2 場比賽,但未參加第 1 場比賽
d)只參加了一場比賽
t1 = 10,20,30 t2 = 40,50,60 print(t1+t2) print(t1*3) print(10 in t1) print(10 not in t1)
(10, 20, 30, 40, 50, 60) (10, 20, 30, 10, 20, 30, 10, 20, 30) True False
以上是天元組,集合的詳細內容。更多資訊請關注PHP中文網其他相關文章!