"Menos espanto" e o argumento padrão mutável

Qualquer pessoa que mexa no Python por tempo suficiente foi mordida (ou rasgada em pedaços) pelo seguinte problema: def foo(a=[]): a.append(5) return a Novatos Python seria de esperar esta função para retornar sempre uma lista com apenas um elemento: [5]. O resultado é muito diferente e muito...