Corrija o erro: filtrar arrays vazios

Published by Caleb Miller in

Estou tentando filtrar arrays vazios de um array. Em outras palavras, quero transformar algo que se parece com isto: ["a", "b", [], [], [1, 2, 3]] para que fique assim: ["a", "b", [1, 2, 3]]. Meu código é:

def remove_empty_arrays(arr):
    return [x for x in arr if len(x) != 0]

No entanto, parece que encontrei um problema, com uma mensagem de erro de object of type 'int' has no len(). Corrija meu código para que todos os testes passem.

Exemplos

# What I want:
remove_empty_arrays([1, 2, [], 4]) ➞ [1, 2, 4]

# What I am getting:
ERROR: Traceback:
   in <module>
   in remove_empty_arrays
   in <listcomp>
TypeError: object of type 'int' has no len()

Notas

N/A