91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

加法重載如何在python3項目中實現

發布時間:2020-12-04 15:08:13 來源:億速云 閱讀:141 作者:Leah 欄目:開發技術

加法重載如何在python3項目中實現?相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。

Python 關于運算符重載的規則:

不能重載內置類型的運算符

不能新建,只能重載

某些運算符不能重載--is、and、or 和 not

Python運算實際上是通過調用對象的特殊方法實現的,比如a+b:

a=20
b=30
c=a+b
d=a.__add__(b)
print("c:",c)
print("d:",c)

運算結果:

c: 50
d: 50

Vector 對于乘法的重載也是類似的:

def __mul__(self, scalar):
  if isinstance(scalar, numbers.Real):
    return Vector(n * scalar for n in self)
  else:
    return NotImplemented
def __rmul__(self, scalar):
return self * scalar

注意這里我們值定義了向量乘以一個數的乘法。嘗試做點乘,矩陣乘法被分配給了@符號,我們也可以做這個定義,然后來運算

def __matmul__(self, other):
  try:
    return sum(a * b for a, b in zip(self, other))
  except TypeError:
    return NotImplemented
def __rmatmul__(self, other):
  return self @ other # this only works in Python 3.5

看完上述內容,你們掌握加法重載如何在python3項目中實現的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

望奎县| 思南县| 图们市| 贵港市| 汨罗市| 泗水县| 南康市| 曲沃县| 深泽县| 常宁市| 龙陵县| 洪泽县| 永川市| 彰化市| 长子县| 洪湖市| 信宜市| 镇巴县| 宁晋县| 新宁县| 邓州市| 政和县| 武夷山市| 石狮市| 博兴县| 泗水县| 太湖县| 浦江县| 荣成市| 东丽区| 汕尾市| 长岛县| 连南| 墨竹工卡县| 怀柔区| 武山县| 竹溪县| 汾西县| 尉氏县| 米脂县| 克拉玛依市|