Объединение списков: ' ' и 'extend()'
При работе со списками в Python вы можете столкнуться с двумя распространенными способами объединить (объединить) их: метод расширения() и оператор плюс ( ). В этой статье рассматриваются их различия и дается представление о «питоническом» способе объединения списков.
'extend()' Метод
Метод Extend() позволяет вам для добавления элементов другого списка к исходному списку. Он не изменяет исходный список, но возвращает None.
a = [1, 2]
b = [2, 3]
b.extend(a)
После этой операции b будет содержать элементы a и b: [2, 3, 1, 2].
' =' Оператор
Оператор = выполняет добавление в список на месте. Он непосредственно изменяет исходный список и добавляет к нему элементы другого списка.
b = a
Здесь b также будет содержать объединенные элементы: [2, 3, 1, 2].
Что такое Pythonic?
Оба метода считаются «питоническими» и имеют свои собственные применения. Однако оператор плюс ( ) обычно предпочтительнее, поскольку он обеспечивает более краткий и последовательный синтаксис для объединения списков. Он также немного быстрее на уровне байт-кода, поскольку позволяет избежать вызова функции, связанной с расширением().
Разница в выполнении
Единственное заметное различие между двумя методами находится в их исполнении. Extend() включает вызов функции, который в Python немного дороже, чем сложение на месте, выполняемое оператором =.
Заключение
При объединении списков в Python, оператор '' является предпочтительным «питоническим» подходом. Хотя метод Extend() может быть полезен в определенных обстоятельствах, оператор = предлагает краткий синтаксис, модификацию на месте и немного более быстрое выполнение. Однако оптимизация производительности не должна вызывать серьезного беспокойства, если только объединение списков не выполняется чрезмерно.
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3