-5
def only_evens(lst):
    """ (list of list of int) -> list of list of int

    Return a list of the lists in lst that contain only even integers. 

    >>> only_evens([[1, 2, 4], [4, 0, 6], [22, 4, 3], [2]])
    [[4, 0, 6], [2]]
    """

    even_lists = []

    for sublist in lst:

        even_lists = []

    for sublist in lst:

        for numb in sublist:
            if numb[i]%2 == 0:
                even_list.append(sublist)

    return even_lists

次のエラーが発生しました: NameError: グローバル名 'i' が定義されていません。関数本体の何が問題になっていますか?

4

2 に答える 2

1

エラーが言うとおりiです:定義されていません。

ここで変数を使用しようとしますi

if numb[i]%2 == 0:
# here--^

しかし、あなたはそれを定義したことはありません。i問題を解決するために定義する

于 2013-10-17T01:09:53.293 に答える