Файл: Руководство по вложенным спискам в Python Подробнее.docx
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 03.02.2024
Просмотров: 6
Скачиваний: 0
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Есть элемент путаницы в отношении термина «списки списков» в Python. Я написал этот наиболее полное руководство по списку списков в мире, чтобы удалить все эти смущения новичками на языке программирования Python. Этот мультимодальный учебник состоит из: исходного кода для копирования и вставки в свой собственный проект. Инвертирующий код, который вы можете выполнить … Python Список списков – полезное иллюстрированное руководство по вложенным спискам в Python Подробнее »
Какой список списков?
Определение : Список списков в Python является объектом списка, где каждый элемент списка является списком сама по себе. Создайте список списка в Python с помощью квадратной нотации кронштейна для создания вложенного списка [[1, 2, 3], [4, 5, 6], [7, 8, 9]] Отказ
Вы хотите развивать навыки Хорошо округлый Python Professional То же оплачивается в процессе? Станьте питоном фрилансером и закажите свою книгу Оставляя крысиную гонку с Python На Amazon ( Kindle/Print )!
Анализ памяти
Важно, чтобы вы понимаете, что список – это только серия ссылок на места памяти. Играя с визуализазом кода, вы получите более глубокое понимание того, как работает Python в своем ядре:
Просто нажмите кнопку «Далее», чтобы увидеть, как разворачивается каждая строка кода.
Создать список списков в Python
Создайте список списков с помощью квадратной обозначения кронштейна. Например, чтобы создать список списков целочисленных значений, используйте [[1, 2], [3, 4]] Отказ Каждый элемент списка внешнего списка является самим вложенным списком.
Конвертировать список списков в один список
Скажи, вы хотите преобразовать список списков [[1, 2], [3, 4]] в один список
[1, 2, 3, 4] Отказ Как это добиться? Есть разные варианты:
Понимание списка [X для L в LST для x в l] Предполагая, что у вас есть список списков lst Отказ
Распаковывать [* lst [0], * lst [1]] Предполагая, что у вас есть список двух списков lst Отказ
Используя продлить () Способ списков Python для расширения всех списков в списке списков.
Найти примеры всех трех методов в следующем фрагменте кода:
lst = [[1, 2], [3, 4]] # Method 1: List Comprehension flat_1 = [x for l in lst for x in l] # Method 2: Unpacking flat_2 = [*lst[0], *lst[1]] # Method 3: Extend Method flat_3 = [] for l in lst: flat_3.extend(l) ## Check results: print(flat_1) # [1, 2, 3, 4] print(flat_2) # [1, 2, 3, 4] print(flat_3) # [1, 2, 3, 4] |
Устранение его простоты и эффективности, первый метод понимания списка превосходит два других метода.
Конвертировать список списков в словаре
Для некоторых приложений вполне полезно преобразовать список списков в словаре.
Базы данных : Список списка – это таблица, где внутренние списки – это строки базы данных, и вы хотите назначить каждую строку в основной ключ в новом словаре.
Электронная таблица : Список списка – это двумерные данные электронных таблиц, и вы хотите назначить каждую строку ключевое имя).
Аналитика данных : У вас есть двумерная матрица (= Numpy Marray ), которые изначально представлены в виде списка списка, и вы хотите получить Словарь Чтобы облегчить доступ к данным.
Существует три основных способа преобразования списка списков в словаре в Python ( Источник ):
Словарь понимание
Выражение генератора
Для петли
Давайте погрузимся в каждый из них.
1. Словарь понимание
Проблема : Скажи, у тебя есть Список списков Где каждый список представляет человека и состоит из трех значений для имени человека, возраста и цвета волос. Для удобства вы хотите создать словарь, в котором вы используете имя человека в качестве словаря, и подсудист, состоящий из возраста и цвета волос в качестве словарного значения.
Решение : Вы можете добиться этого, используя красивую (но, удивительно, немного известную) особенность Словарь понимание в питоне.
persons = [['Alice', 25, 'blonde'], ['Bob', 33, 'black'], ['Ann', 18, 'purple']] persons_dict = {x[0]: x[1:] for x in persons} print(persons_dict) # {'Alice': [25, 'blonde'], # 'Bob': [33, 'black'], # 'Ann': [18, 'purple']} |
Объяснение : Заявление о понимании словаря состоит из выражения x [0]: x [1:] который назначает имя человека х [0] в список х [1:] цвет человека и цвета волос. Кроме того, он состоит из контекста для х в людях что итерации по всем «рядам данных».