python—各種常用函式及庫
列表
list1.append(x) 將x新增到列表末尾
list1.sort() 對列表元素排序
list1.reverse() 將列表元素逆序
list1.index(x) 返回第一次出現元素x的索引值
list1.insert(i,x) 在位置i處插入新元素x
list1.count(x) 返回元素x在列表中的數量
list1.remove(x) 刪除列表中第一次出現的元素x
list1.pop(i) 取出列表中i位置上的元素,並將其刪除
元組
- 元組(tuple)是特殊的序列型別
- 一旦被建立就不能修改,使得程式碼更安全
- 使用逗號和圓括號來表示,如(‘red’,‘blue’,‘green’),(2,4 , 6)
- 訪問方式和列表相同
- 一般用於表達固定資料項,函式多返回值等情況
特點:
- 元組中的元素可以是不同型別
- 元組中各元素存在先後關係,可通過索引訪問元組中的資料
math庫
math.pi 圓周率
math.ceil(x) 對x向上取整
math.floor(x) 對x向下取整
math.pow(x,y) x的y次方
math.sqrt(x) x的平方根
math.fsum(list1) 對集合內的元素求和
更多math庫函式請參考:https://docs.python.org/3/library/math.html
datetime庫
- 處理時間的標準函式庫datetime
- datetime.now()獲取當前日期和時間
- 字串->datetime
datetime.strptime(),解析時間字串
註釋:Y表示四位數年份,y表示兩位數年份。
- datetime->字串
datetime.strftime(),格式化datetime為字串顯示
- 日期時間格式參考:
- isocalendar(),返回年,週數,及周幾
- 更多操作參考:
https://docs.python.org/3/library/datetime.html#module-datetime
集合
- python中的集合(set)型別同數學中的集合概念一致,即包含0或多個數據項的無序組合
- 集合中的元素不可重複
- 集合是無序組合,沒有索引和位置的概念
- set()函式用於集合的生成,返回結果是一個無重複且排序任意的集合
- 集合通常用於表示成員間的關係、元素去重等。
集合的操作:
- s-t 或 s.difference(t) 返回在集合s中但不在t中的元素
- s&t 或 s.intersection(t) 返回同時在集合s和t中的元素
- s|t 或 s.union(t) 返回結合s和t中的所有元素
- s^t 或 s.symmetric_difference(t) 返回集合s和t中的元素,但不包括同時在其中的元素。
字典
- 字典型別(dict)是‘’鍵--值‘’資料項的組合,每個元素是一個鍵值對。
例如:身份證號(鍵)--個人資訊(值)
- 字典型別資料通過對映查詢資料項
- 對映:通過任意鍵查詢集合中的值得過程
- 字典型別以鍵為索引,一個鍵對應一個值
- 字典型別的資料是無序的
基本操作:
- 定義空字典: d = dict()
- 增加一項: d[key] = value
- 訪問: d[key]
- 刪除某項: del d[key]
- key是否在字典中: key in d
- 字典的遍歷:
遍歷所有的key: for key in d.keys():
print(key)
遍歷所有的value: for value in d.values():
print(value)
遍歷所有的資料項: for item in d.items():
print(items)
random模組
- random() 生成一個【0,1.0)之間的隨機浮點數
- uniform(a,b) 生成一個a到b之間的隨機浮點數
- randint(a,b) 生成一個a到b之間的隨機整數
- choice(<list>) 從列表中隨機返回一個元素
- shuffle(<list>) 將列表中元素隨機打亂
- sample(<list>,k) 從指定列表中隨機獲取K個元素
更多random模組的方法請參考:https://docs.python.org/3/library/random.html
matplotlib模組
- matplotlib是一個數據視覺化函式庫
- matplotlib的子模組pyplot提供了2D圖表製作的基本函式
- 例子:https://matplotlib.org/gallery.html
- 散點圖繪製:
import matplotlib.pyplot as plt
#x,y分別是X座標和Y座標的列表
plt.scatter(x,y)
plt.show()
Numpy
- 包括:
強大的N維陣列物件array
成熟的科學函式庫
使用的線性代數,隨機數生成函式等
- Numpy的操作物件是多維陣列ndarray
ndarray.shape 陣列的維度
- 建立陣列:np.array(<list>),np.arange()...
- 改變陣列形狀 reshape()
- Numpy建立隨機陣列:
np.random.randint(a,b,size) #建立【a,b)之間,形狀為size的陣列