為什麼 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))
廣告
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP