有幸參加了阿里雲舉辦的天池龍珠計畫python訓練營。收穫頗多。
每天記錄一些自己之前的知識盲點,需經常溫習。
一、集合
1、集合的建立:
#在建立空集合的時候只能使用s = set(),因為s = {}建立的是空字典。
【例子】
basket = set()
basket.add('banana')
num = {}
print(type(num)) # num =
print(type(num)) # #使用set(value)工廠函式,把列表或元組轉換成集合。
【例子】
a = set('abracadabra')
print(a) #
b = set(("google", "lsgogroup", "taobao", "taobao"))
print(b) #
c = set(["google", "lsgogroup", "taobao", "google"])
print(c)
#
2、集合的內建方法:
1、刪除集合中元素的三種方法:
set.remove(item) 用於移除集合中的指定元素。如果元素不存在,則會發生錯誤。
【例子】
fruits.remove("banana")
set.discard(value) 用於移除指定的集合元素。remove() 方法在移除乙個不存在的元素時會發生錯誤,而 discard() 方法不會。
【例子】
fruits.discard("banana")
set.pop() 用於隨機移除乙個元素。
【例子】
x = fruits.pop()
print(x) # banana
2、取交集:
set.intersection(set1, set2) 返回兩個集合的交集。
set1 & set2 返回兩個集合的交集。
set.intersection_update(set1, set2) 交集,在原始的集合上移除不重疊的元素。
【例子】
a = set('abracadabra')
b = set('alacazam')
print(a) #
print(b) #
c = a.intersection(b)
print(c) #
print(a & b) #
print(a) #
a.intersection_update(b)
print(a) #
3、異或運算:
set.symmetric_difference(set)返回集合的異或。
set1 ^ set2 返回集合的異或。
set.symmetric_difference_update(set)移除當前集合中在另外乙個指定集合相同的元素,並將另外乙個指定集合中不同的元素插入到當前集合中。
【例子】
a = set('abracadabra')
b = set('alacazam')
print(a) #
print(b) #
c = a.symmetric_difference(b)
print(c) #
print(a ^ b) #
print(a) #
a.symmetric_difference_update(b)
print(a) #
3、不可變集合:
python 提供了不能改變元素的集合的實現版本,即不能增加或刪除元素,型別名叫frozenset。需要注意的是frozenset仍然可以進行集合操作,只是不能用帶有update的方法。
frozenset([iterable]) 返回乙個凍結的集合,凍結後集合不能再新增或刪除任何元素。
【例子】
a = frozenset(range(10)) # 生成乙個新的不可變集合
print(a)
# frozenset()
b = frozenset('lsgogroup')
print(b)
# frozenset()
二、序列
1、針對序列的內建函式:
sorted(iterable, key=none, reverse=false) 對所有可迭代的物件進行排序操作。
iterable -- 可迭代物件。
key -- 主要是用來進行比較的元素,只有乙個引數,具體的函式的引數就是取自於可迭代物件中,指定可迭代物件中的乙個元素來進行排序。
reverse -- 排序規則,reverse = true 降序 , reverse = false 公升序(預設)。
返回重新排序的列表。
【例子】
x = [-8, 99, 3, 7, 83]
print(sorted(x)) # [-8, 3, 7, 83, 99]
print(sorted(x, reverse=true)) # [99, 83, 7, 3, -8]
t = (, , )
x = sorted(t, key=lambda a: a["age"])
print(x)
# [, , ]
zip(iter1 [,iter2 [...]])
用於將可迭代的物件作為引數,將物件中對應的元素打包成乙個個元組,然後返回由這些元組組成的物件,這樣做的好處是節約了不少的記憶體。
我們可以使用 list() 轉換來輸出列表。
如果各個迭代器的元素個數不一致,則返回列表長度與最短的物件相同,利用 * 號操作符,可以將元組解壓為列表。
【例子】
a = [1, 2, 3]
b = [4, 5, 6]
c = [4, 5, 6, 7, 8]
zipped = zip(a, b)
print(zipped) # print(list(zipped)) # [(1, 4), (2, 5), (3, 6)]
zipped = zip(a, c)
print(list(zipped)) # [(1, 4), (2, 5), (3, 6)]
a1, a2 = zip(*zip(a, b))
print(list(a1)) # [1, 2, 3]
print(list(a2)) # [4, 5, 6]
天池龍珠計畫Python訓練營 第五天
有幸參加了阿里雲舉辦的天池龍珠計畫python訓練營。收穫頗多。每天記錄一些自己之前的知識盲點,需經常溫習。一 字串 1 字串轉換 maketrans intab,outtab 建立字元對映的轉換表,第乙個引數是字串,表示需要轉換的字元,第二個引數也是字串表示轉換的目標。translate tabl...
天池龍珠計畫Python訓練營 第一天
有幸參加了阿里雲舉辦的天池龍珠計畫python訓練營。收穫頗多。每天記錄一些自己之前的知識盲點,需經常溫習。一 運算子 例子 比較的兩個變數均指向不可變型別。對於字串來說 a hello b hello print a is b,a b true true print a is not b,a b ...
龍珠計畫Python訓練營筆記 day10
美國 練習 按州總捐款熱力地圖 參賽選手自由發揮 補充 第乙個補充熱力地圖的參賽選手可以獲得天池杯子乙個 呼叫相關包 import pandas as pd import matplotlib.pyplot as plt import seaborn as sns 設定畫布大小 f,ax plt.s...