@qw0cry

Как правильно разделить список, состоящий из нескольких списков?

У меня есть список, состоящий из нескольких списков внутри, по типу:
[['t', 'e', 'k', 's', 't'], ['d', 'l', 'y', 'a'], ['p', 'r', 'i', 'm', 'e', 'r', 'a']]
буквы разделены намеренно, вопрос следующий, как мне достать каждый список из этого большого, чтобы в последующем с ним работать? (с условием того, что количество списков внутри большого списка неизвестно и может меняться в зависимости от вводимых данных)
import string
def high(x):
    result = []
    alphabet = string.ascii_lowercase
    numbers_keys = []
    for i in range(len(alphabet)):
        numbers_keys.append(i)
    numbers_keys.remove(0)
    numbers_keys.append(26)
    score = {alphabet[i]: numbers_keys[i] for i in range(0, len(alphabet), 1)}
    lst_words = []
    x = x.split()
    for i in x:
        lst_words.append(list(i))
    new_lst = []
    for i in lst_words:
        for n in range(len(i)):
            result.append(score[i[n]])
    print(result)
high('tekst dlya primera')

ожидалось, что вывод будет схож со списком, который я представил в начале, но в итоге выходит: [20, 5, 11, 19, 20, 4, 12, 25, 1, 16, 18, 9, 13, 5, 18, 1]
  • Вопрос задан
  • 412 просмотров
Решения вопроса 1
phaggi
@phaggi Куратор тега Python
лужу, паяю, ЭВМы починяю
import string
def high(x):
    numbers_keys = dict([(i, n+1) for n, i in enumerate(string.ascii_lowercase)])
    return [(sum([numbers_keys[i] for i in word]), word) for word in x.split()]


print(sorted(high('tekst dlya primera'), reverse=True))
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@DenisShahbazyan
arr = [
    ['t', 'e', 'k', 's', 't'],
    ['d', 'l', 'y', 'a'],
    ['p', 'r', 'i', 'm', 'e', 'r', 'a']
]

for i in arr:
    # получаем вложенные списки
    print(f'В списке {i}: Такие элементы: ', end='')
    for j in i:
        # выводим каждый элемент
        print(f'{j}, ', end='')
    print()
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы