私は、リスト内の最大値を有するものを見つけようとする機能書きました:私の出力が間違っている再帰関数との最大の要素を見つける
def maxElement(L):
length=len(L)
if L[length-1]>L[length-2]:
del L[length-2]
print L
elif L[length-1]<L[length-2]:
del L[length-1]
return L
print maxElement([1,2,95754754745,3,1,8,444,2,42425])
を:
>>>
[1, 2, 95754754745L, 3, 1, 8, 444, 42425]
[1, 2, 95754754745L, 3, 1, 8, 444, 42425]
>>>
それはdoesnの私が欲しいものを私のために削除しないでください。私は何を間違えたのですか?私はそれを得ることができません!
あなたが書いた関数は再帰的ではありません。関数を再帰的に呼び出すには、 'def a_function()'ブロック内にある関数自身が 'a_function()'呼び出しを持っている必要があります。おそらくあなたが知っているように、これまで述べていないので、単に 'max()'を使い、あなたのリスト 'L'を' max_item = max(L) 'のように渡すことができます。私はあなたがすでにそれを知っていると仮定します。 –
@Rawing whileループを追加しても、この関数は再帰的になりません。 – Jokab
要素を削除しました - 最後の '2'。 –