我在編碼方面的經驗很少,我正在學習Python中的一個類。我正在學習條件語句和循環,並且被要求創建一個函數,它會接受任意數量的參數,並給我最大的幫助。很明顯,我不允許使用內置的max函數。在Python中取最大數量的參數
到目前爲止,我有:
def max(x):
current_max = x[1]
for i in x[i]:
if x[i] > current_max:
current_max = x[i]
當我運行的代碼,它給了我沒有錯誤,但是當我嘗試運行MAX(),它會只接受一個參數。浮現在腦海中唯一的想法是中加:
x = input('Enter numbers to compare:')
當我跑了這一點,我得到:
UnboundLocalError:「我」分配
之前引用局部變量,我不能確定的我可以做什麼在這一點上,因爲我不確定我是不是正確地定義了參數,或者在定義max(x)的代碼中有一個錯誤,因爲某些原因第一次沒有出現。
只是一句話,隨機數的參數。你的函數只需要一個參數。 Python中的N-Arguments將是'max(* args)'。 – RedX 2015-02-06 07:11:45
這很有趣,我不知道你可以做到這一點。我在定義函數時如何參考參數?所以,舉個例子,當我寫「for i in x」時,我會用什麼來代替「x」? – BRamses 2015-02-06 07:16:27
這只是一個列表:'對於一個參數'。有關更多詳細信息,請參閱[本文](http://stackoverflow.com/questions/36901/what-does-double-star-and-star-do-for-python-parameters)。 – RedX 2015-02-06 07:19:43