AttributeError: el objeto 'NoneType' no tiene ningún atributo 'append'
Tengo un problema extraño con Python pasar una lista como parámetro a una función. Aquí está el código:
def foobar(depth, top, bottom, n=len(listTop)):
print dir(top)
print top.append("hi")
if depth > 0:
exit()
foobar(depth+1, top.append(listTop[i]), bottom.append(listBottom[i]))
top = bottom = []
foobar(0, top, bottom)
Dice "AttributeError: el objeto 'NoneType' no tiene ningún atributo 'append'", porque top es None en foobar aunque dir (top) imprime un atributo completo y una lista de métodos de una lista de tipos. ¿Así que qué hay de malo? Solo quería pasar dos listas como parámetros a esta función recursiva.