[英]Defining functions in Python 3 and Parenthesis
我有本教程
c = (x, y)
def addVectors((angle1, length1), (angle2, length2)):
do something
return
然后使用以下命令調用addVectors
:
addVector((a, b), c)
但是python 3只是給我括號(angle1, lenght1)
周圍的語法錯誤
謝謝
以前在Python 2中可以做到這一點,但在Python 3中通過PEP-3113刪除了
解決方案是在函數內部解壓縮參數:
def addVectors(angle1_length1, angle2_length2):
angle_1, length1 = angle1_length1
angle_2, length2 = angle2_length2
do something
return
PEP 3113 :刪除了元組參數拆包。 您不能再寫
def foo(a, (b, c))
:...。請使用def foo(a, b_c): b, c = b_c
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.