50 Функция map Python. Что делает функция map в Python
Вставка
- Опубліковано 8 лют 2025
- 🔥🔥🔥 Инди-курс по Python 🔥🔥🔥
stepik.org/cou...
👉👉👉 Свой вопрос по курсу можешь задать в чате
t.me/+SlnNhAO7...
👉👉👉 Также подписывайся на мой телеграмм-канал
t.me/python_eg...
egoroffartem.py...
В видео вы узнает что такое функция map и что она делает.
Функция map принимает два аргумента
1) функцию
2) итерируемый объект (коллекция)
Map возвращает итератор, в котором к каждому объекту коллекции применяется переданная функция.
Рассмотрим примеры использования функции map со встроенными функциями
Рассмотрим примеры использования функции map со функциями def
Рассмотрим примеры использования функции map с анонимными функциями (lambda).
Разберем как можно переписать программу с функцией map на другую программу при помощи генераторов списков (list comprehension)
В видео разберем как ввести список чисел через пробел с помощью map
Узнаете как в python устроить ввод чисел через пробел при помощи map
Срезы строк
• Урок 10 Строки: индекс...
egoroffartem.py...
На сайте будет выкладываться более подробная информация о данном курсе и будущих видео.
Все видео этого курса можете найти на сайте
egoroffartem.py...
или в Вк
videos-...
Если кому нужна помощь, предлагаю индивидуальные занятия. Подробнее пишите в личку в вк
artem_e...
python....
В данном группе можете найти информацию о новых видео и задать вопросы
🫵 Теория без практики - ничто, поэтому 👇
🐍 stepik.org/course/63085/promo
👉 специально для тебя создал бесплатный топовый курс по Python
👉 В нем тебя ждет:
📗 более 400 практических заданий на программирование
📗 более 250 тестовых заданий на проверку материала
📗 десятки часов видеоматерилов по теории
📗 видеоразборы решения заданий
📗 текстовые материалы по урокам, примеры кода
📗 доступ к закрытому чату с дружественной обстановкой
📗 сертификат в случае успешного прохождения курса
Пожалуй лучший канал для изучения Python!
Согласен. Есть ещё один канал примерно такого же уровня. Но этот вроде лучше.
@@dizelvinable Какой?
@@Леонид-с5з ua-cam.com/users/zaemiel
@@dizelvinable Спасибо
@@Леонид-с5з Кстати, там есть и плейлисты по Flask и Django. Отлично всё поясняется.
самый лучший курс по питону! спасибо!
Господи, у вас великолепно получается объяснять! У меня было куча непонятных моментов которые не мог понять, пока не просмотрел ваши полезные видео. Спасибо Вам огромное! Вы первый человек чьим патроном я стал)
круто, спасибо!)
@Максим Петин [ object ] и list(object) - не одно и то же. [ object ] создаёт список, что помещает в себя объект object, например: [ '123' ] создаёт список с одним элементом - строкой '123'. А list(object) создаёт список, содержащий в себе результаты итераций объекта object, например: list('123') возвращает не [ '123' ], а [ '1', '2', '3' ], ведь, при итерировании, строка возвращает себя по одному символу в качестве результата итераций.
А теперь к непосредственно вашему вопросу. map(list,k) проходится по элементам списка k и превращает их в списки. Когда он настигнет значение 'hellloooo1212', он превратит строку в список, разбив на символы, и выдаст список [ 'h', 'e', 'l', 'l', 'l', 'o', 'o', 'o', 'o', '1', '2', '1', '2' ], а потом list(...) обернёт это во внешний список, так как map - итерируемый объект, что возвращает, в качестве результатов итераций, результаты функции, что стоит в первом аргументе. Короче говоря, [ [ 'h', 'e', 'l', 'l', 'l', 'o', 'o', 'o', 'o', '1', '2', '1', '2' ] ].
Какая же крутая подача материала!
Это лучший канал о Python))
Артём, благодарю! Отличный урок, всё понятно, подробно, чётко, без воды, наглядно 🔥🔥💯👍
Отличный канал для изучения Python. Большое спасибо автору за труд!
Отличный урок!
Этот канал настоящая находка. Подписался и сохранил
Лучший канал что я находил. Спасибо за видео.
Артем огромное спасибо вам за ваш труд. Вы очень круто обясняете
Спасибо за объяснение! Все подробно и доходчиво.
Спасибо, отличный урок, все ясно и понятно.
Огромное спасибо за ваш труд! Очень хорошо доходит)))
Спасибо большое, думал так и не пойму, а все до конца разжевали ч таком коротком видео, спасибо
Очень здорово! Спасибо!
Спасибо! Почти всё поняла
Несколько раз смотрел ваши ролики, но всё никак не подписался. Через большой промежуток времени вновь посмотрел, сейчас подписался 😁 Видимо, дорос до материала 😁
Очень доступная информация для восприятия, cпасибо за контент
Спасибо за понятное объяснение!😊
Спасибо огромное! На степике большое кол-во задач, где по условию несколько чисел вводятся через пробел. Уже надоело создавать циклы for. Да, можно списочными выражениями пользоваться, это даже полезно для понимания того, как работают списки, однако хотелось увидеть метод, который более универсальный в дополнение к списочным выражениям.
Спасибо, что объяснили простыми словами.
Спасибо, посмотрела!
Спасибо. Все кратко и по делу.
спасибо большое, помогли уже на первой минуте все понять)
БОЖЕ МОЙ, Я ПОНЯЛА. Спасибо вам огромное!!
насколько я понял
map(abs, a) это тоже самое что
for i in a:
abs(i)
Не совсем. "abs(i)" выводит элементы списка "a", взятые по модулю, "map()", в свою очередь, создаёт объект, состоящий из элементов списка "a", взятых по модулю.
@@pr0xy663 map не состоит из объектов списка а, он создаёт генератор с определёными инструкциями, которые будут выполнятся в случае итерации над этим объектом. Вот так может выглядить имплементация map в Python:
def map_user(function,*iterables):
iterator = zip(*iterables)
return (function(*args) for args in iterator)
Имплементация потому, что map это built-in функция написана на языке програмирования С
спасибо за прекрасное объяснение! статьи на тему кода читать не могу, ничего не понятно, а по видео наоборот)
Также считывание строки можно с помощью генератора списка: b = input().split()
g = [int(s) for s in b]
print(g)
А ты хорош
Всё хорошо, но почему такой тихий звук во всех видео??
Короче, ребят, если переводить на русский, map - это миксер для смешивания двух элементов - функции и аргумента составного типа данных. Таким образом мы можем, например, с лёгкостью преобразовать строки в целые числа, которые идут на вход map(float, input("Введите число.")
ну и будет число разбито по цифрам. или ты это и имел ввиду?
@@vrotkat7813 извините, но я Вас не понял
@@islamyunusov5215 ну, я имел ввиду что ведённое число, допустим 567, будет выглядеть так [5.0, 6.0, 7.0]
Thank you so much
Хорошее объяснение! Я думаю нафиг 'Map' нужна. В целом упрощает преобразование без 'For' вот и всё.
Егор, если вы до сих пор читаете комментарии из этого видео то знайте что вы самый лучший русско-говоряший учитель который смог обяснить эту тему
Только преподавателя зовут Артём. А так да, уроки отличные.
Не раболепствуй
Круто благодарю!
спасибо!
как вы одновременно на мин 2:11 всем сделали функцию abs?
спасибо за классный урок!!!! только вопрос на 3:45мин странно что при возведении в степень получились положительные числа . тк вроде как -3**2=-9. или я что то путаю. Хотя я понимаю , что наверно тк def f(x):
retern -x**2 дало бы все отрицательные значения, но как созранить истинные значения списка с отрицательными и положительными значениями?
@Demetrius Dombrowski САПАСИБО❤ Помогли понять ,что ты не знаю математику🧐
Спасибі тобі велике!!!
Ніколи не розумів як все це працює, а завдяки тобі зміг зрозуміти!🙏
ураааа
Perfect
Спасибо за урок, а чем всё-таки numbers = list(map(int, input().split())) лучше, чем numbers = [int(i) for i in input().split()]?
В случае с map у нас сначала:
1. Забирается ввод.
2. Разбивается на список по пробелам.
3. Прогоняется каждый элемент списка через функцию int() и становится числом.
4. Из map object снова делаем list.
Итого 4 этапа.
В случае с генератором списка:
1. Забирается ввод.
2. Разбивается на список по пробелам.
3. Прогоняется каждый элемент списка через функцию int() и становится числом.
И это уже список. Вроде как тут 3 этапа, или я ошибаюсь?
Так же померяв оба варианта с помощью timeit получилось, что numbers = [int(i) for i in input().split()] быстрее.
можно и так и так, скорость считывание на программе не сильно скажется
Круто!
вопрос на 4:00 минуте. в map(f, a). почему мы не указываем атрибуты в функции f? каким образом осуществляется перебор элементов из массива a?
или он понимает, что мы взяли а в качестве второго аргумента и его только и перебирает?
в видео есть ответы на все эти вопросы
@@egoroffchannel map() это класс, а не функция.
@@vladumnik192 Функция
Я вас люблю
Отлично.
а как использовать map к многомерному списку? допустим, сделать все значения int
Супер
Добрый день. Подскажите пожалуйста какой программой программирования вы использовали в данном видео? Мне она больше нравится, в сравнении с Geany.
Pycharm
@@egoroffchannel map() это класс
доброго дня. пытаюсь реализовать такуй конструкцию... s = list(map(int, list(storage_data.values()), split()))
Пхахах
Что быстрее будет работать, map или генератор? Если обьем вычислений большой
Конечно генератор!
Круто
👏
Подскажите на минуте 2:12 он поставил курсор перед каждым значением, как он это сделал.
альт зажимай и выбирай места
а был в каком-то видео пример, как адаптировать последний ввод через map отсюда к вводу двумерного списка (бесконечного, без range(n) / range(m))?
что значит бесконечного ввода?
@@egoroffchannel что на входе надо считывать матрицу любого размера до тех пор, пока не введут "конец". Всмысле ее размерность изначально не определена
@@Gergel_ создаешь до цикла главный список
считываешь строку в цикле while пока она не равна "конец". Если не равна внутри цикла преобразовываешь в список из целых чисел и добавляешь его в главный список.
@@egoroffchannel а есть телеграм чат у канала / курса на степике по этим материалам ?
@@Gergel_ канала нет.
я подобное объяснял как делать в разборах решения задач
ua-cam.com/video/QfqcqeTrSR0/v-deo.html
тебе только цикл for на while заменить остается
Интересный факт, что map лежит в основе Параллельного алгоритма MapReduce
Я не так давно начал разбираться в Python. То что делает функция map понятно, я не могу понять что это за функция. В чем ее смысловая нагрузка. Допустим функция list преобразует в список, а по такой же логике что обобщенно делает map?
Если инпуту дать несколько чисел, то выйдет ошибка, как было показано в ролике, а функция мап даёт возможность записывать много целых чисел или же использовать в каких-либо операциях и вычислениях два аргумента
создает итератор для коллекции, посмотрите в idle за расходом памяти
>>> a=list(range(2**24))
>>> for i in [x*2 for x in a]: pass
>>> for i in map(lambda x: x*2,a): pass
@@АртёмКраус-ъ1ф 👍
a = ["Hello", "Hi", "Privet"]
b = list(map(list, a))
c = list(map(sorted, b))
print(a)
print(b)
print(c)
Ничего не отсортировалось
С мелких букв пиши
👍
Объясняет как сапожник
а как сделать чтоб число выводились не списком а числами например 253412 тоесть все вместе слитно
print(*a,sep='')
@@egoroffchannel спасибо)
Да ,канал один из луших
будет ли обзор модулей?
Да. Какой интересует?
@@egoroffchannel Ну, для начала стандартные)
@@egoroffchannel про re хотелось бы посмотреть
6:18 олег их гнинром доог
В каком редакторе автор работает, кто знает??
Pycharm
cooool heheee
W
абоба
2:12 и тут я охуел
+++!!!!
спасибо!