Hier Lösung für verschachtelte Liste, die beliebige Tiefe hat:
def map_nlist(nlist=nlist,fun=lambda x: x*2):
new_list=[]
for i in range(len(nlist)):
if isinstance(nlist[i],list):
new_list += [map_nlist(nlist[i],fun)]
else:
new_list += [fun(nlist[i])]
return new_list
Sie in Großbuchstaben wollen alle Listenelement, geben Sie einfach
In [26]: nested_list = [['Hello', 'World'], ['Goodbye', [['World']]]]
In [27]: map_nlist(nested_list,fun=str.upper)
Out[27]: [['HELLO', 'WORLD'], ['GOODBYE', [['WORLD']]]]
Und mehr wichtig, diese rekursive Funktion kann mehr als das!
Ich bin neu in Python, fühlen Sie sich frei zu diskutieren!
Ah natürlich. Ich muss müde sein als sonst. – kjfletch
in py3k map erfordert eine Liste, die darauf angewendet werden soll. – SilentGhost