Если вы изучаете, как кодировать, функция карта Python – ваша возможность навыкать.
Картинка это: вы хотите стать более эффективным кодером. Вы хотите, чтобы ваш код компилировал быстрее. Вы хотите произвести впечатление на своих сверстников со своими надежными знаниями кодирования. Если кто-то из этого резонирует с вами, вы пришли в нужное место.
Перед тем, как мы будем двигаться вперед, вам нужно понять, какие функции и поставки являются:
Функции – код, который выполняет определенную задачу.
Примеры: Лен () , Распечатать() , ул.
Есть объекты, которые содержат один или несколько членов.
Примеры: список, словарь, кортеж
Функция карты Python – это функция, которая позволяет преобразовать целую передачу, используя другую функцию. Ключевая концепция здесь – это преобразование, которое может включать, но не ограничивается:
- Преобразование строк на цифры
- Округление номеров
- Получение длины каждого намерения
Вам может быть интересно: «Почему я не могу просто сделать выше с циклом?»
Ответ, вы можете. Но использование функции карты Python сохраняет память (что означает, что ваш код работает быстрее) и требует меньшего количества кода. Давайте пройдемся по примеру, чтобы вы могли понять, что я имею в виду.
Сначала давайте начнем с A для цикла
Допустим, у вас есть список строк, которые на самом деле цифры, но вам нужно преобразовать список строк в целые числа:
list_of_strings = [“5”, “6”, “7”, “8”, “9”, “10”]
Вы можете использовать пустой список и для цикла для выполнения этого:
list_of_strings = ["5","6","7","8","9", "10"] result = [] for string in list_of_strings: result.append(int(string)) print(result)
Если вы запустите этот пример, вы получите:
Выход: [5, 6, 7, 8, 9, 10]
Что происходит под капотом с циклом для цикла
Вы можете быть довольны результатом, но подумайте о том, что сделал ваш код.
Вы сказали компьютеру пройти каждый участник («5», «6», «7», и т. Д…), конвертировать участника, а затем сохранить этот элемент в новый список. При использовании A для петли для преобразования списка функциональна, он не является оптимальным.
Функция карты Python (с примером кода)
Вместо этого будем использовать функцию карты Python Map для получения функционального и оптимального результата. Мы начнем с нашего списка строк, которые необходимо преобразовать:
list_of_strings = ["5","6","7","8","9", "10"]
Затем мы будем использовать функцию карты Python для преобразования списка строк в список целых чисел:
result = map(int,list_of_strings) print(list(result))
Если вы запустите вышеприведенный пример, вы получите тот же результат:
Выход: [5, 6, 7, 8, 9, 10]
Прежде чем мы доберемся до того, как функция карты Python более оптимальна, чем использование A для цикла, давайте сломаемся тем, что мы только что сделали:
list_of_strings = ["5","6","7","8","9", "10"]
Все, что мы здесь сделали, создайте переменную, которая хранит список строк, которые мы хотим преобразовать в номера.
result = map(int,list_of_strings)
Давайте сломаем вышеуказанный код изнутри. Синтаксис функции Python Map выглядит следующим образом:
map(insert function here, insert iterable here)
карта ()
Это просто имя функции карты Python, здесь ничего не представляется.
Вставить функцию здесь
это пространство, где вы пишете в функции. В приведенном выше примере кода мы использовали int
функция. Мы могли бы использовать еще одну встроенную функцию, как Лен ()
Или мы могли бы построить нашу собственную функцию и использовали ее здесь.
Вставить ITERABLE здесь
Является ли пространство, где вы пишете в результате по вашему выбору. В этом случае мы вставили наш список ( list_of_strings
).
Результат
Является ли переменная, где мы храним наших недавно преобразованных членов.
Давайте перейдем к последней строке кода. Опять же, мы будем работать изнутри:
print(list(result))
Список ()
Занимает нашими вновь преобразованные члены и сообщает нашему компьютеру, эти участники друг от друга.
Печать ()
Отпечатает наш новый список!
Что происходит под капотом с функцией карты Python
Вместо того, чтобы итерацию через каждый член списка строк функция карты Python преобразовала весь список строк в список чисел. Вы сохранили память, и ваш код проработал быстрее.
Если вы хотите трансформировать, функцию карты Python> для петлей
В конце концов, функция карты Python более элегантна, чем для цикла и поможет вам быстрее скомпилировать ваш код.
Использование функции карты Python поможет принять навыки кодирования на следующий уровень и стать лучшим программистом. В процессе вы можете даже произвести впечатление ваших кодировков с этим новым навыком.
Тем не менее, функция карты Python – это только начало. Есть много более привлекательных трюков Python, которые помогут вам написать более элегантный код и улучшить свои навыки программирования. Счастливое кодирование!