下面為我python學習中所做的筆記,有關於Tiple, List, set, and dict的簡易函式
元組 ex: T3=()
元組 Tuple: 有順序、不能修改
len(元組): 有多少個元組
元組.index(欲搜尋元素): 尋找某元素第一次出現的位置
元組.count(欲搜尋元素):查詢元組中欲搜尋元素出現次數
T3[x]
T3[x][y]
T3[::-1]:倒轉
tuple速度較list快,若以車廂來比喻,tuple第一百萬個車廂,車長直接知道第一百萬個車廂裡面有什麼,
而list車長必須從第一個車廂開始跑,跑到第一百萬個車廂才知道裡面有什麼
若要修改tuple,需要另外定義–>
T1 = (1, 2, [3], [’emma’,’eddie’])
T1[-2][0]=”x”
T1[-1][0]=”y”
T1[-1][1]=”z”
串列 List : 有順序、可以修改
list可索引,可修改–>可用del function
串列 ex: [True]
L1+L2
L1[x]
L1[x][y]
L2[-2:0:-2]: 從-2開始到(0+1)的位置,兩個為間距倒數回去
L1[0]=-3: L1第一個元素改成-3
串列.pop([x]): 移除某位置元素, 並回傳此串列。 預設為移除最後一個位置的元素。
串列,remove[x]: 移除串列中第一個x的元素
串列.clear(): 整個list清空
串列.append(新元素):將某元素加到list最後. ex: L1.append([1,2])
串列.insert(位置, 新元素) : ex: L1.insert(2,[1,2,3])
串列.extend(新元素): 將新元素拆開加入list 最後面 ex:L1.extend([1,2]), L1 = [….原本list, 1, 2]
ex2: L1.extend(“abc123”)
L2[::-1] 將L2反轉但不改變L2的值
L2.reverse: 將L2的值反轉
L1.sort() :先排序數字再排序字母
L3= L2.copy
set 集合 :無順序(所以沒有index function)可修改、資料不重複
set無順序不可索引,不可用del
ex: S1={12,22,12}–>S0={12,22}; S1=set(‘tatto’); S1=set([5,3,1,2])
len(集合) 計算集合長度,返回int
集合.add(元素)
集合.remove(元素)
集合.clear()
集合.copy()
set() —> 空的集合
S1&S2: S1跟S2交集的部分
S1|S2: 我全都要 (聯集)
S1-S2: S1去掉有S2的
集合A^集合B: 互斥運算,把這兩個集合共有的去除掉(連集剪掉交集的部分)
S1 <= S2 : 判斷S1是否為S2的子集合(A集合有沒有在B集合裡頭或是這兩個是相等的 有沒有小於他—>有沒有在他裡頭)
是的話就是True
字典:無順序、可以修改
佔用記憶體ram,dict較list多,但字典操作的速度較快
dict 可索引可修改,可用del function
D1 = {}
key:value
可以想像成集合跟字典是一樣的。只是型態不一樣
可以從key找到值
len(字典) : 字典裡面有幾個組合 ex: len(D2)
字典[某key]: 做索引動作 []裡面要放key ex:D1[‘a’]
字典[某key] = 把某個key對應到的值改掉也可以是新增資料 ex: D1[‘a’] = 300
字典.keys() 取得字典內所有的key ex: D1.keys() ; list (D1.keys())–>直接把D1的key型態改成串列來利用
字典.values() 取得字典內所有值 ex: D1.values()
字典.items() 取得字典內所有key/value ex: D1.items() ?
字典A.update(字典B) :兩個字典作串接 D3.update(D2) —>將D2串接到D3
字典.copy() 將D2字典複製,並回傳新字典D3 D3= D2.copy()