-2
a_list = [1,2,3,4,[42,'Meaning of life']]
def some_function('Meaning of life')
# insert code here
return 42

我怎样才能做到这一点。显然,我可以通过以下方式找到“生命的意义”:

for i in a_list:
    if i == "Meaning of life":
        print i

现在,如果它在列表中,我如何找到该元素,然后找到它旁边的元素?

我特意让我的代码将该列表中的所有内容附加到第一个值或整数之后的字符串中。

4

1 回答 1

4
>>> def search(needle, haystack):
        for element in haystack:
            if not isinstance(element, list):
                if element == needle:
                    return True
            else:
                found = search(needle, element)
                if found:
                    return element[0]

>>> a_list = [1,2,3,4,[42,'Meaning of life']]
>>> print search('Meaning of life', a_list)
42
>>> print search('Anything else', a_list)
None
于 2013-03-04T15:22:58.740 回答