1. 程式人生 > >python學習之路08——元組、集合

python學習之路08——元組、集合

使用 區別 操作 range 成員運算符 index 獲取值 的區別 增加

一. 元組
1、概念
列表:是一種有序的集合
元組和列表的區別:
? a.列表:[] 元組:()
? b.列表中的元素可以進行增加和刪除操作,但是,元組中的元素不能進行修改
? c.相同點:都是一種容器,都可以同時存儲 不同類型的數據
2.創建元組
創建元組:創建空元組:tuple = () 創建有元素的元組:tuple1 = [元素1,元素2.....]
#1.創建空元組
tuple1 = ()
#2.創建帶有元素的元組
tuple2 = (10,20,30)
#3.和列表類似,在元組中可以存儲重復元素
tuple3 = (10,20,10,30,10)
print(tuple3)
#4.和列表類似,在同一個元組中國可以同時存儲不同類型的數據 tuple4 = ("hello",True,10)
#5.特殊情況:如果創建的元組中只有一個元素,使用逗號消除歧義 tuple5 = (10)
print(tuple5)
tuple5 = 10
print(tuple5)
#為了消除歧義,修改 tuple5 = (10,)
print(tuple5)
3.元組的訪問
獲取值:語法:元組名[索引]
代碼演示:

tuple1 = (10,20,30,40,50)
#1.獲取元素值
print(tuple1[1])
#獲取元組中的最後一個元素
print(tuple1[4])
? #註意:索引為正數表示從前往後獲取,負數表示從後往前獲取,-1表示元組中的最後一個元素
print(tuple1[-1])
print(tuple1[-2])
? #索引越界
#print(tuple1[5]) #IndexError: tuple index out of range
#print(tuple1[-6]) #IndexError: tuple index out of range
? #2.修改元素值
#和列表不同的地方:元組中的元素不能進行隨意的更改
#tuple1[2] = 100
print(tuple1) #TypeError: ‘tuple‘ object does not support item assignment
? #特殊情況:元組中的元素不能隨意更改,本質指的是不能更改地址
tuple2 = (1,3,43,5,[54,54,5])
print(tuple2)
list1 = tuple2[4]
list1[1] = 100 #可以更改,因為列表的地址沒變
print(tuple2)
"""
(1, 3, 43, 5, [54, 54, 5])
(1, 3, 43, 5, [54, 100, 5])
"""
#3.刪除元組
del tuple2
4.元組的操作
#1.組合:+ #2.重復:* #3.判斷元素是否在元組中:成員運算符:int not in #4.元組截取【切片】:類列表,包頭不包尾
#1.獲取元組中元素的個數 #2.獲取元組中元素的最大值和最小值
二.集合
1、概念
Python中的集合跟數學上的集合是一致的
特點;不允許有重復元素,可以進行交集,並集或者差集的計算
set和dict類似,和dict的區別在於:set相當於只是存儲了key的集合
本質:無序且無重復元素的集合
2.集合的創建
set的創建沒有特有的符號,主要是通過list,tuple,dict進行創建
3.集合的操作
#1添加 add()插入:update()【打散插入】
#2刪除remove()
#3遍歷的時候直接遍歷
#4交集和並集
s4 = set([43,54,5,6])
s5 = set([545,4,65,6,75])
#交集:&【按位與】 and
r1 = s4 & s5
print(r1)
print(type(r1))
#並集:|【按位或】 or
r2 = s4 | s5
print(r2)

python學習之路08——元組、集合