Входная информация

Vitys

Новичок
Пользователь
Янв 14, 2022
26
1
3
Здравствуйте, как на входе получить многомерный список, в независемости что пришло одиночное значение или список или многомерный список, необходимо для подсчета Count(пример: a=1 print(1), a=[1,2,5] print(1), a=[[1,2],[2,3]] print(2))
 

Vershitel_sudeb

Vershitel sudeb
Команда форума
Модератор
Мар 17, 2021
933
208
43
20
Москва
В смысле подсчитать элементы по второй оси?
Python:
iterable = (tuple, list)
def count(x):
    if type(x) in iterable and type(x[0]) in iterable:
        return len(x[0])
    return 1

print(count(3))                       # 1
print(count([1, 2, 3]))               # 1
print(count([[1, 2, 3], [3, 4, 5]]))  # 3
 

Vitys

Новичок
Пользователь
Янв 14, 2022
26
1
3
Вот так
 

Вложения

  • 1.jpg
    1.jpg
    25,2 КБ · Просмотры: 2

Vershitel_sudeb

Vershitel sudeb
Команда форума
Модератор
Мар 17, 2021
933
208
43
20
Москва
Предположу что ты пытался на скриншоте отобразить это:
Python:
# ---1---
a = [[1, 2, 6], [2]]
b = count(a)
print(b)  # 2
# ---2---
a = [1, 2, 6]
b = count(a)
print(b)  # 3, должно быть 1
# ---3---
a = [1]
b = count(a)
print(b)  # 1

Хотя я не очень понимаю что тут считается, думаю количество списков на самом большом уровне вложенности, тогда примерно так:
Python:
def count(x):
    if type(x[0]) is list:
        return len(x)
    return 1
 

Vitys

Новичок
Пользователь
Янв 14, 2022
26
1
3
считается в --1-- многомерный список состоит из 2 списков: --2--- список состоит из 1 списка : --3-- число переводим в список
 

Vershitel_sudeb

Vershitel sudeb
Команда форума
Модератор
Мар 17, 2021
933
208
43
20
Москва
считается в --1-- многомерный список состоит из 2 списков: --2--- список состоит из 1 списка : --3-- число переводим в список
Тогда так
Python:
def count(x):
    if type(x) is list and type(x[0]) is list:
        return len(x)
    return 1
 

Vitys

Новичок
Пользователь
Янв 14, 2022
26
1
3
list = [1, 2,6]
def count(x):
if type(x) is list and type(x[0]) is list:
return len(x)
return 1
print(list)
 

Vershitel_sudeb

Vershitel sudeb
Команда форума
Модератор
Мар 17, 2021
933
208
43
20
Москва
 

Форум IT Специалистов