EasyPython🐍
67 subscribers
590 photos
4 links
ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΈ ΠΏΠΎ Python, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ упростят Π²Π°ΠΌ Тизнь.
Download Telegram
Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²Ρ‹Ρ… элСмСнтов Π² список

Как ΠΌΡ‹ Π·Π½Π°Π΅ΠΌ, ΠΌΠ΅Ρ‚ΠΎΠ΄ append() добавляСт Π½ΠΎΠ²Ρ‹ΠΉ элСмСнт Π² ΠΊΠΎΠ½Π΅Ρ† списка.

ΠŸΡ€ΠΈ этом Π΄Π»ΠΈΠ½Π° списка увСличиваСтся Π½Π° 1, ΠΈ Π½ΠΎΠ²Ρ‹ΠΉ элСмСнт Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ ΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ с индСксом, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π° Π΅Π΄ΠΈΠ½ΠΈΡ†Ρƒ большС, Ρ‡Π΅ΠΌ индСкс послСднСго элСмСнта Π΄ΠΎ добавлСния.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ списка Ρ‡Π΅Ρ€Π΅Π· Ρ†ΠΈΠΊΠ» с использованиСм append()

Π‘ основой Ρ€Π°Π·ΠΎΠ±Ρ€Π°Π»ΠΈΡΡŒ. Π’Π΅ΠΏΠ΅Ρ€ΡŒ посмотрим, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ списка с нСсколькими значСниями. НС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΆΠ΅ Π½Π°ΠΌ ΡΠΎΡ‚Π½ΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ для ΠΏΠΎΠΎΡ‡Π΅Ρ€Π΅Π΄Π½ΠΎΠ³ΠΎ добавлСния элСмСнтов, Π² ΠΊΠΎΠ½Ρ†Π΅ ΠΊΠΎΠ½Ρ†ΠΎΠ². Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ старый-Π΄ΠΎΠ±Ρ€Ρ‹ΠΉ Ρ†ΠΈΠΊΠ».

Π’ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π½ΠΈΠΆΠ΅ Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ Ρ†ΠΈΠΊΠ»Π° пСрСмСнная i содСрТит Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈΠ· Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° range(5), Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ значСния ΠΎΡ‚ 0 Π΄ΠΎ 4 (Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ).
Π’Π΅Ρ€Π½Π°Ρ€Π½Ρ‹ΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€: ΠŸΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚Π΅ If ΠΈ Else Π² ΠΎΠ΄Π½Ρƒ строку ΠΊΠΎΠ΄Π°

МногиС языки программирования ΠΈΠΌΠ΅ΡŽΡ‚ Ρ‚Π΅Ρ€Π½Π°Ρ€Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹. Бинтаксис Python для этого просто ΠΏΠΎΠΌΠ΅Ρ‰Π°Π΅Ρ‚ if ΠΈ else Π² ΠΎΠ΄Π½Ρƒ строку.

Если ΠΌΡ‹ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅ΠΌ Ρ‚Ρƒ ΠΆΠ΅ Π»ΠΎΠ³ΠΈΠΊΡƒ, Ρ‡Ρ‚ΠΎ ΠΈ Π²Ρ‹ΡˆΠ΅, Π±Π΅Π· Ρ‚Π΅Ρ€Π½Π°Ρ€Π½ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π°, потрСбуСтся нСсколько строк ΠΊΠΎΠ΄Π°.
Лямбда-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ для опрСдСлСния Π½Π΅Π±ΠΎΠ»ΡŒΡˆΠΈΡ… Π°Π½ΠΎΠ½ΠΈΠΌΠ½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ

Лямбда-функция, называСмая Π°Π½ΠΎΠ½ΠΈΠΌΠ½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ, прСдставляСт собой ΠΌΠ΅Ρ‚ΠΎΠ΄, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ Π»Π΅Π³ΠΊΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Π½Π΅Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Π² Python, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ваш ΠΊΠΎΠ΄ Π°ΠΊΠΊΡƒΡ€Π°Ρ‚Π½Π΅Π΅ ΠΈ ΠΊΠΎΡ€ΠΎΡ‡Π΅.

Распространённым ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ лямбда-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ являСтся ΠΈΡ… использованиС для опрСдСлСния ΠΌΠ΅Ρ‚ΠΎΠ΄Π° сравнСния для встроСнной Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ sort()
ΠŸΡ€Π΅Π²Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ списка Π² ΠΎΠ΄Π½Ρƒ строку

ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²ΡŒΡ‚Π΅, Ρ‡Ρ‚ΠΎ Ρƒ вас Π΅ΡΡ‚ΡŒ список строк, ΠΈ Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ всС элСмСнты Π² ΠΎΠ΄Π½Ρƒ строку. Для этого Π²Ρ‹ навСрняка Π±ΡƒΠ΄Π΅Ρ‚Π΅ ΠΏΠ΅Ρ€Π΅Π±ΠΈΡ€Π°Ρ‚ΡŒ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ элСмСнт Π² спискС ΠΈ ΠΏΡ€ΠΈΡΠΎΠ΅Π΄ΠΈΠ½ΡΡ‚ΡŒ ΠΊ Π½Π΅ΠΌΡƒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ.

Но Π΅ΡΡ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ быстрый ΠΈ эффСктивный способ выполнСния Ρ‚ΠΎΠΉ ΠΆΠ΅ Π·Π°Π΄Π°Ρ‡ΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΎΠ΄Π½ΠΎΠΉ строки ΠΊΠΎΠ΄Π°.
ΠšΠΎΠ½Ρ‚Π΅ΠΊΡΡ‚Π½Ρ‹ΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€: АвтоматичСскоС Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ рСсурсов

Как ΠΌΡ‹ Π·Π½Π°Π΅ΠΌ, послС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Ρ„Π°ΠΉΠ» Π±Ρ‹Π» ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Π½, Π²Π°ΠΆΠ½ΠΎ быстро Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ Π΅Π³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡΠ²ΠΎΠ±ΠΎΠ΄ΠΈΡ‚ΡŒ рСсурсы памяти. ΠŸΡ€Π΅Π½Π΅Π±Ρ€Π΅ΠΆΠ΅Π½ΠΈΠ΅ этим ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ ΡƒΡ‚Π΅Ρ‡ΠΊΠ΅ памяти ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ ΠΊ сбою нашСй систСмы.

Как ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π²Ρ‹ΡˆΠ΅, ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ β€œwith” являСтся ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ для контСкстных ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ΠΎΠ² Python. Пока ΠΌΡ‹ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ Ρ„Π°ΠΉΠ» Ρ‡Π΅Ρ€Π΅Π· Π½Π΅Π³ΠΎ ΠΈ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌ Ρ„Π°ΠΉΠ» ΠΏΠΎΠ΄ Π½ΠΈΠΌ, Ρ„Π°ΠΉΠ» Π±ΡƒΠ΄Π΅Ρ‚ автоматичСски Π·Π°ΠΊΡ€Ρ‹Ρ‚ послС ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ.
Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ β€œEnumerate” Для элСгантного ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€Π° списков

Π’ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… случаях Π½Π°ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ индСкс, Ρ‚Π°ΠΊ ΠΈ значСния элСмСнтов Π² спискС ΠΏΡ€ΠΈ Π΅Π³ΠΎ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½ΠΈΠΈ.

ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡƒΡŽ Π»ΠΎΠ³ΠΈΠΊΡƒ Π½Π° Python, Π½ΠΎ my_list[i] каТСтся Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ нСумСстным, особСнно ΠΊΠΎΠ³Π΄Π° Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ элСмСнта ΠΌΠ½ΠΎΠ³ΠΎ Ρ€Π°Π·.

Π Π΅Π°Π»ΡŒΠ½Ρ‹ΠΉ питоновский способ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ это - ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ enumerate() для получСния ΠΊΠ°ΠΊ индСкса, Ρ‚Π°ΠΊ ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ.
Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… списков

ΠœΠ΅Ρ‚ΠΎΠ΄ append() ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΈ с Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹ΠΌΠΈ списками, Π° Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ с простыми.

Π˜Ρ‚Π°ΠΊ, Ρƒ нас Π±Ρ‹Π» список nested_list, Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΡƒΠΆΠ΅ Π±Ρ‹Π»ΠΈ Π΄Π²Π° Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… списка [[1, 2], [3, 4]].

ΠŸΡ€ΠΎΡΡ‚ΠΎΠΉ список добавляСтся Π²ΠΎ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹ΠΉ список ΠΊΠ°ΠΊ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΎΠ΄ΠΈΠ½Π°Ρ€Π½Ρ‹ΠΉ элСмСнт.
Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ элСмСнта Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ условия

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ условиС для использования append(). Если условиС выполняСтся ΠΈΠ»ΠΈ Ссли условия Π½Π΅Ρ‚, append() добавляСт элСмСнт Π² ΠΊΠΎΠ½Π΅Ρ† списка. Всё ΠΊΠ°ΠΊ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ.

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅, Ссли temp большС 25, Ρ‚ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄ append() добавляСт элСмСнты Π² ΠΊΠΎΠ½Π΅Ρ† списка numbers. Π’ нашСм случаС, это 30 ΠΈ 27.
Π‘Ρ‚Ρ€ΠΎΠΊΠΈ Ρ‚ΠΎΠΆΠ΅ ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΡŽΡ‚ΡΡ

map() ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Β«Π΄ΠΎΡ‡Π΅Ρ€Π½ΡŽΡŽΒ» Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Π½Π° любом ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π΅, Π³Π΄Π΅ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌ Ρ†ΠΈΠΊΠ» for. ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ Π΅Π΅ ΠΊ Π»ΡŽΠ±ΠΎΠΌΡƒ ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠΌΡƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ, Π΄Π°ΠΆΠ΅ ΠΊ strings.

ΠŸΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ΅ΠΌ всС Π±ΡƒΠΊΠ²Ρ‹ Π² Π·Π°Π³Π»Π°Π²Π½Ρ‹Π΅.
Get Method для словаря

Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ скобки, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈΠ· словаря. Но сСйчас рСкомСндуСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Get method.

ΠŸΡ€ΠΈ использовании ΠΌΠ΅Ρ‚ΠΎΠ΄Π° скобок выдаСтся ошибка, Ссли ΠΊΠ»ΡŽΡ‡ отсутствуСт. Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Get method Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ β€œNone” .
ΠžΡ‚Π»ΠΈΡ‡ΠΈΠ΅ append() ΠΎΡ‚ extend()

ΠœΠ΅Ρ‚ΠΎΠ΄ extend() Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для добавлСния элСмСнтов Π² список, Π½ΠΎ Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ append(), ΠΎΠ½ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π΄Ρ€ΡƒΠ³ΠΎΠΉ список) ΠΈ добавляСт Π΅Π³ΠΎ элСмСнты ΠΏΠΎ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ.

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΌΠ΅Ρ‚ΠΎΠ΄ extend() ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ‚ содСрТимоС Π΄Π²ΡƒΡ… списков, Ρ‚ΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ ΠΌΠ΅Ρ‚ΠΎΠ΄ append() просто добавляСт Π½ΠΎΠ²Ρ‹ΠΉ элСмСнт Π² ΠΊΠΎΠ½Π΅Ρ† списка.

Π”Π΅Π»ΠΎ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ append() добавляСт ΠΎΠ΄ΠΈΠ½ элСмСнт, Π² Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ extend() добавляСт всС элСмСнты ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Π½ΠΎΠ³ΠΎ списка ΠΏΠΎΠΎΡ‡Π΅Ρ€Π΅Π΄Π½ΠΎ.
ΠšΠΎΠ½ΠΊΠ°Ρ‚Π΅Π½Π°Ρ†ΠΈΡ списков с использованиСм append()

Когда ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ append() с Π΄Ρ€ΡƒΠ³ΠΈΠΌ списком, происходит Π½Π΅ конкатСнация (слияниС) списков Π² ΠΏΡ€ΠΈΠ²Ρ‹Ρ‡Π½ΠΎΠΌ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠΈ, Π° Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ списка ΠΊΠ°ΠΊ элСмСнта Π² Π΄Ρ€ΡƒΠ³ΠΎΠΉ список.

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ этого ΠΊΠΎΠ΄Π° β€” list1 = [1, 2, 3, [4, 5, 6]]. Π’Π΅ΠΏΠ΅Ρ€ΡŒ list2 стал элСмСнтом послСднСго элСмСнта списка list1.
ВранспонированиС 2d-массива

Π­Ρ‚ΠΎΡ‚ Π»Π°ΠΉΡ„Ρ…Π°ΠΊ ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ‚, ΠΊΠ°ΠΊ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ транспонированиС 2d-массива с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° zip.
map() + лямбды

ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ мэппинг с бСзымянными функциями, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΊΠΎΠ΄ стал Π΅Ρ‰Π΅ ΠΊΠΎΡ€ΠΎΡ‡Π΅.

ВозвСдя всС элСмСнты списка ls Π² ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚, ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ Ρ‚Π°ΠΊΠΎΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚.
self() для обращСния ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΊ сСбС

Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС self позволяСт ΠΏΠ΅Ρ€Π΅ΠΌΠ½ΠΎΠΆΠΈΡ‚ΡŒ элСмСнты списка Π½Π° 2.
Π—Π°Π³ΠΎΠ½ΠΊΠ° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ Π²Π²ΠΎΠ΄Π°

БотрудничСство map(), input() ΠΈ list() ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ ΠΏΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ вСсь ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ тСкст Π² список. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ³ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ ΠΏΡ€ΠΈ расчСтС ΡΠΌΠΎΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠΉ окраски тСкста, вСдь слова прСдстоит ΠΏΠΎΡ‚ΠΎΠΌ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Ρ‚ΡŒ ΠΊ исходной Ρ„ΠΎΡ€ΠΌΠ΅
НСдостатки map()

К нСдостаткам map(), Ρ‚Π°ΠΊ ΠΆΠ΅ ΠΊΠ°ΠΊ ΠΈ Π² случаС с filter(), ΠΌΠΎΠΆΠ½ΠΎ отнСсти Β«Π»Π΅Π½ΠΈΠ²ΡƒΡŽ ΠΎΡ†Π΅Π½ΠΊΡƒΒ» (Lazy Evaluation). Π‘ΠΎΠ·Π΄Π°Ρ‚Π΅Π»ΠΈ языка сдСлали Π½Π΅ΠΌΠ°Π»ΠΎ Π² 3-ΠΉ вСрсии, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ»ΡƒΡ‡ΡˆΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ языка, ΠΈ ΠΏΠΎΡ‚ΠΎΠΌΡƒ вмСсто ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π½Π°ΠΌ возвращаСтся ссылка Π½Π° ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€. Пока ΠΌΡ‹ Π½Π΅ ΠΎΠ±Π΅Ρ€Π½Π΅ΠΌ Π΅Π΅ Π² list() ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄, ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ-Π΄ΠΎΡ‡ΠΊΠΎΠΉ Π΅Ρ‰Π΅ Π½Π΅ ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»Π°.

Π­Ρ‚ΠΎ Π½Π΅ΠΏΠ»ΠΎΡ…ΠΎ Π½Π° ΠΌΠ°Π»Ρ‹Ρ… ΠΎΠ±ΠΎΡ€ΠΎΡ‚Π°Ρ…, Π½ΠΎ Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅, Π³Π΄Π΅ Π΄Π°Π½Π½Ρ‹Π΅ вСсьма Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·Π½Ρ‹, Π±Π΅Π· просмотра Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ ошибок Π½Π° ΠΏΡ€ΠΎΠ΄Π΅ увСличиваСтся: ΠΌΡ‹ просто Π½Π΅ ΡƒΠ²ΠΈΠ΄ΠΈΠΌ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ.