在 Python 中,@運算子傳遞給__matmul__元素的屬性。這在實作與實際后端無關的方法時會派上用場。例如
def inner(x, y):
return x @ y
# same:
# return x.__matmul__(y)
實作一個內積,forx是ynumpy 陣列或任何其他花哨的陣列類。
外部產品是否也有類似的 API ?
uj5u.com熱心網友回復:
@運算子作為PEP 465添加為__matmul__. 外部產品沒有這樣的東西(也沒有dunder方法)。
事實上,*一旦第一個陣列被重新整形,外積就是一個簡單的乘法 ( ):
import numpy as np
a = np.array([1,2,3])
b = np.array([10, 100])
np.outer(a, b)
a[:,None] * b
兩種產品的輸出:
array([[ 10, 100],
[ 20, 200],
[ 30, 300]])
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/410463.html
標籤:
