我正在嘗試制作一個 python 函式,它接收兩個整數并回傳從最大整數開始的降序串列。(例如:f(2,5)=[5,4,3,2])
這是我嘗試過的:
def f(n1: int, n2: int) -> List(int):
if n1>n2:
L=list(range(n2,n1 1))
L.reverse()
elif n1==n2:
L=[n1]
else:
L=list(range(n1,n2 1))
L.reverse()
return L
問題是我在 List(int) 處不斷收到錯誤訊息“'list' object is not callable”。請問 List(int) 有什么問題?
uj5u.com熱心網友回復:
型別注釋中存在語法錯誤。有關更多資訊,我建議閱讀有關它的官方檔案https://docs.python.org/3/library/typing.html。要解決它,您需要更改List(int)為List[int]. 在 python 中,()運算子是呼叫callable運算子并執行例如函式呼叫,如f(1, 2)
uj5u.com熱心網友回復:
L 是您創建的物件。您應該呼叫函式 f。
def f(n1: int, n2: int):
if n1>n2:
L=list(range(n2,n1 1))
L.reverse()
elif n1==n2:
L=[n1]
else:
L=list(range(n1,n2 1))
L.reverse()
return L
f(2,5)
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/453942.html
