Python 學習筆記(11)

2021-09-25 21:17:13 字數 2025 閱讀 2045

1. arange

arange 類似於python中的 range 函式,只不過返回的不是列表,而是陣列:

arange(start, stop=none, step=1, dtype=none)
產生乙個在區間 [start, stop) 之間,以 step 為間隔的陣列,如果只輸入乙個引數,則預設從 0 開始,並以這個值為結束.

注意:不包含末尾,左閉右開

2. linspace

linspace(start, stop, n)

產生 n 個等距分布在 [start, stop]間的元素組成的陣列,包括 start, stop。

3. logspace

logspace(start, stop, n)

產生 n 個對數等距分布的陣列,預設以10為底。

注意:包含末尾,閉區間

x_ticks = np.linspace(-1, 1, 5)

y_ticks = np.linspace(-1, 1, 5)

x, y = np.meshgrid(x_ticks, y_ticks)

事實上,x, y 中有很多冗餘的元素,這裡提供了乙個 sparse 的選項:

x, y = np.meshgrid(x_ticks, y_ticks, sparse=true)
meshgrid 可以設定軸排列的先後順序:

預設為 indexing=『xy』 即笛卡爾座標,對於2維陣列,返回行向量 x 和列向量 y

或者使用 indexing=『ij』 即矩陣座標,對於2維陣列,返回列向量 x 和行向量 y。

4. ogrid , mgrid

matlab中有 meshgrid 的用法:

meshgrid(-1:.5:1, -1:.5:1)
numpy的 meshgrid 並不支援這樣的用法,但我們可以使用 ogrid / mgrid 來實現類似這樣的用法。

ogrid 與 mgrid 的區別在於:

ogrid 相當於 meshgrid(indexing=『ij』, sparse=true)

mgrid 相當於 meshgrid(indexing=『ij』, sparse=false)

注意:為了包含 end 的值,我們在 step 的位置傳入乙個複數 5j ,表示我們需要乙個 5 個值的陣列,此時返回值就會包含 end 的值。

5. r_ , c_

我們可以使用 r_ / c_ 來產生行向量或者列向量。

注意:包不包含末尾,看step的值是否為複數

6. ones , zeros

ones(shape, dtype=float64)

zeros(shape, dtype=float64)

產生乙個制定形狀的全 0 或全 1 的陣列,還可以制定陣列型別

7. empty

empty(shape, dtype=float64, order=『c』)

也可以使用 empty 方法產生乙個制定大小的陣列(陣列所指向的記憶體未被初始化,所以值隨機),再用 fill 方法填充

8. empty_like, ones_like, zeros_like

empty_like(a)

ones_like(a)

zeros_like(a)

產生乙個跟 a 大小一樣,型別一樣的對應陣列。

9. identity

indentity(n, dtype=float64)

產生乙個 n 乘 n 的單位矩陣:

python學習筆記11(函式)

概述 在乙個完整的專案中,某些功能會反覆的使用。那麼會將功能封裝成函式,當我們要使用功能的時候直接呼叫函式即可 本質 函式就是對功能的封裝 優點 1 簡化 結構,增加了 的復用度 重複使用的程度 2 如果想修改某些功能或者除錯某個bug,只需要修改對應的函式即可 定義函式 格式 def 函式名 引數...

Python學習筆記11 函式

定義函式的時候,我們把引數的名字和位置確定下來,函式的介面定義就完成了。對於函式的呼叫者來說,只需要知道如何傳遞正確的引數,以及函式將返回什麼樣的值就夠了,函式內部的複雜邏輯被封裝起來,呼叫者無需了解。python的函式定義非常簡單,但靈活度卻非常大。除了正常定義的必選引數外,還可以使用預設引數 可...

Python學習筆記11(RUNOOB)

python3 函式 你可以定義乙個由自己想要功能的函式,以下是簡單的規則 任何傳入引數和自變數必須放在圓括號中間,圓括號之間可以用於定義引數。函式的第一行語句可以選擇性地使用文件字串 用於存放函式說明。函式內容以冒號起始,並且縮排。return 表示式 結束函式,選擇性地返回乙個值給呼叫方。不帶表...