為什麼 Python 無法在一個函式中定義元組?
自 Python 3.0 之後,就不再可以在函式內定義元組解包作為引數(PEP 3113)。這意味著如果你嘗試按以下方式定義函式——
def fn(a,(b,c)): pass
Python 直譯器會在元組的第一個括號處顯示語法錯誤。相反,定義元組物件作為引數,並在函式內部解包。在以下程式碼中,表示兩個點 x 和 y 座標的兩個元組物件被傳遞為引數以計算兩個點之間的距離。在計算之前,元組物件會被解包到各自的 x 和 y 座標中。
def hypot(p1,p2):
x1,y1=p1
x2,y2=p2
import math
hyp=math.sqrt((x1-x2)**2+(y1-y2)**2)
return hyp
x=(10,10)
y=(20,20)
print ("hyp=",hypot(x,y))
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
JavaScript
PHP