Hmm, když z toho udělám globální proměnnou, tak se mi to pak spojí do jednoho seznamu všechno. Ovšem když ji pokaždé inicializuji na prázdný seznam před každým voláním, tak to funguje, ale přijde mi to hrozné znásilňování. Musí být lepší způsob.
def recursive_count(nested_num_list):
if len(nested_num_list) != 0:
for elem in range(len(nested_num_list)):
#print(nested_num_list, nested_num_list[elem], elem) # kontrola
if type(nested_num_list[elem]) == type([]):
#print(nested_num_list, elem) # kontrola
recursive_count(nested_num_list[elem])
else:
result_all.append(nested_num_list[elem])
#print('vysledek:', result_all) # kontrola
return result_all
result_all = [] # globalni promenna
print(recursive_count([2, 9, [2, 1, 13, 2], 8, [2, 6]]))
result_all = [] # globalni promenna
print(recursive_count([[9, [7, 1, 13, 2], 8], [7, 6]]))
result_all = [] # globalni promenna
print(recursive_count([[9, [7, 1, 13, 2], 8], [2, 6]]))
result_all = [] # globalni promenna
print(recursive_count([[5, [5, [1, 5], 5], 5], [5, 6]]))
result_all = [] # globalni promenna
výsledek:
[2, 9, 2, 1, 13, 2, 8, 2, 6]
[9, 7, 1, 13, 2, 8, 7, 6]
[9, 7, 1, 13, 2, 8, 2, 6]
[5, 5, 1, 5, 5, 5, 5, 6]