私はコードを持っていると思いますが、私はループが実行されているときに私はちょうど1つの問題を抱えていると思います。リストの中の次の変数をスキップして、それをスキップしないようにする方法。私は、次の変数が0であり、ループはすでに0を行ったと考えているので推測しています。これを修正する方法はありますか?リストを変異時に値を飛ばし避けるために、反復の上に行くとするときに、Lアップ混乱をしないようにPython MIT 6.00.1X
def f(i):
return i + 2
def g(i):
return i > 5
def applyF_filterG(L, f, g):
"""
Assumes L is a list of integers
Assume functions f and g are defined for you.
f takes in an integer, applies a function, returns another integer
g takes in an integer, applies a Boolean function,
returns either True or False
Mutates L such that, for each element i originally in L, L contains
i if g(f(i)) returns True, and no other elements
Returns the largest element in the mutated L or -1 if the list is empty
"""
for i in L:
if g(f(i)) == False:
L.remove(i)
return max(L)
L = [0, -10, 5, 6, -4]
print(applyF_filterG(L, f, g))
print(L)
あなたは名誉を壊しているかなり確信して動作しますここに投稿してコードを書いてください。b y MITに助けを求めるために、ここに投稿する代わりにそれらを使用することをお勧めします。 –