Функция принимает список и возвращает int в зависимости от того, сколько списков в списке не включает сам список. (Для простоты можно считать, все целое число или список.)Как найти количество вложенных списков в списке?
Например:
x=[1,2,[[[]]],[[]],3,4,[1,2,3,4,[[]] ] ]
count_list(x) # would return 8
Я думаю, используя рекурсию бы помочь, но я не уверен, как это осуществить, это что я до сих пор.
def count_list(a,count=None, i=None):
if count==None and i==None:
count=0
i=0
if i>len(a)
return(count)
if a[i]==list
i+=1
count+=1
return(count_list(a[i][i],count))
else:
i+=1
return(count_list(a[i]))
Как насчет явно неправильный ответ? 'str (x) .count (" [") - 1' –
, если в любом списке нет строк, это решение PROBABLY не хуже, чем рекурсия. Если в любом списке есть строки, у вас может быть строка, содержащая '' ['', которая все время сломает. –
На линии 'def' должны быть одинаковые знаки равенства не двойные. –