EasyPython🐍
67 subscribers
590 photos
4 links
ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΈ ΠΏΠΎ Python, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ упростят Π²Π°ΠΌ Тизнь.
Download Telegram
Π˜Π·ΠΌΠ΅Π½ΡΠ΅ΠΌΡ‹Π΅ значСния ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ 

АргумСнты ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π² Python Π·Π°Π΄Π°ΡŽΡ‚ΡΡ ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π· ΠΏΡ€ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ элСмСнт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΏΡ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Π²Ρ‹Π·ΠΎΠ²Π΅, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅, содСрТащиСся Π² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ, измСняСмы ΠΏΡ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠΈ ΠΊ Π½ΠΈΠΌ Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.
ВыраТСния присваивания (Assignment expressions)
Python 3.8

Π’Π°ΠΊ ΠΆΠ΅ извСстныС ΠΊΠ°ΠΊ Β«ΠΌΠΎΡ€ΠΆΠΎΠ²Ρ‹ΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Β» (walrus operator) β€” Π½ΠΎΠ²Ρ‹ΠΉ синтаксис, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ ΠΏΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Ρ‚ΡŒ значСния ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌ Π²Π½ΡƒΡ‚Ρ€ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ выраТСния. Π­Ρ‚ΠΎ, Π½Π°Π²Π΅Ρ€Π½ΠΎΠ΅, самоС извСстноС ΠΈ обсуТдаСмоС ΠΈΠ· Π½ΠΎΠ²ΠΎΠ²Π²Π΅Π΄Π΅Π½ΠΈΠΉ вСрсии 3.8.

ЦСлью ввСдСния ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° являСтся ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΠ΅ читаСмости ΠΊΠΎΠ΄Π°, поэтому ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ (ΠΊΠ°ΠΊ ΠΈ всС ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹) стоит Π½Π΅ ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π²ΠΎΠΉ ΠΆΠ΅ возмоТности, Π° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚ΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° это умСстно.
4 ситуации ΠΈΠ· ΠΆΠΈΠ·Π½ΠΈ лямбда-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π² Python. НахоТдСниС ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΈ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ 

Для нахоТдСния минимального ΠΈ максимального Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π² Π½Π°Π±ΠΎΡ€Π΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π²Π΅ встроСнныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Π° ΠΈΠΌΠ΅Π½Π½ΠΎ min() ΠΈ max(). ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏ использования ΠΎΠ±ΠΎΠΈΡ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π΅Π½. Π’ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв ΠΌΡ‹ прСдоставляСм ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, состоящий ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… элСмСнтов. Задавая Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ key, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ искомыС ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΈ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹Π΅ значСния ΠΏΠΎ Ρ‚ΠΎΠΌΡƒ ΠΆΠ΅ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡƒ, Ρ‡Ρ‚ΠΎ ΠΈ Π² случаС с Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ sorted().
4 ситуации ΠΈΠ· ΠΆΠΈΠ·Π½ΠΈ лямбда-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π² Python. ИспользованиС Π² качСствС Ρ„Π°Π±Ρ€ΠΈΡ‡Π½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ 

ВСроятно, Π²Π°ΠΌ извСстно, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠΌΠΈΠΌΠΎ встроСнного Ρ‚ΠΈΠΏΠ° словаря dict, Π² нашСм распоряТСнии Π΅ΡΡ‚ΡŒ Π΅Ρ‰Π΅ Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΡΠ»ΠΎΠ²Π°Ρ€ΡŒ ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ defaultdict. Π­Ρ‚ΠΎΡ‚ класс являСтся подклассом Ρ‚ΠΈΠΏΠ° dict, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ доступСн Π² ΠΌΠΎΠ΄ΡƒΠ»Π΅ collections. ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€ defaultdict прСдставляСт собой defaultdict([default_factory[, ...]]). default_factory вызываСтся для создания значСния ΠΏΡ€ΠΈ условии, Ρ‡Ρ‚ΠΎ Π² словарС Π΅Ρ‰Π΅ Π½Π΅Ρ‚ Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π°.
4 ситуации ΠΈΠ· ΠΆΠΈΠ·Π½ΠΈ лямбда-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π² Python. ИспользованиС лямбда с функциями Π²Ρ‹ΡΡˆΠ΅Π³ΠΎ порядка (Π½Π΅ самый Π»ΡƒΡ‡ΡˆΠΈΠΉ ΡΠΏΠΎΡΠΎΠ±) 

Под функциями Π²Ρ‹ΡΡˆΠ΅Π³ΠΎ порядка ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°ΡŽΡ‚ΡΡ Ρ‚Π°ΠΊΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΊΠ°ΠΊ map() ΠΈ filter(). Π’Π°ΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ всё Π² Python являСтся ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°ΡŽΡ‰ΠΈΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π² качСствС Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² ΠΈΠ»ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‰ΠΈΠ΅ ΠΈΡ… Π² качСствС Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°, Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ функциями Π²Ρ‹ΡΡˆΠ΅Π³ΠΎ порядка.
Π›ΠΎΠ³ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π² Python с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Logzero. Π—Π°ΠΏΠΈΡΡŒ Π»ΠΎΠ³ΠΎΠ² Π² Ρ„Π°ΠΉΠ»

МногиС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ Python ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡ΠΈΡ‚Π°ΡŽΡ‚ Π·Π°ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ Π»ΠΎΠ³ΠΈ Π² Ρ„Π°ΠΉΠ». ΠŸΡ€ΠΈ запускС систСмы ΠΈΡ… ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ошибок ΠΈ обслуТивания. Π’Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ» для сохранСния всСх Π»ΠΎΠ³-записСй Π² legzero.

ΠœΡ‹ ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌ Π»ΠΎΠ³Π³Π΅Ρ€ ΠΈ Π»ΠΎΠ³-Ρ„Π°ΠΉΠ» ΠΈΠ· logezero. ΠœΠ΅Ρ‚ΠΎΠ΄ logfile ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Π»ΠΎΠ³-Ρ„Π°ΠΉΠ» для сохранСния хранящихся Π² Π»ΠΎΠ³Π΅ записСй.
Π›ΠΎΠ³ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π² Python с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Logzero. Π‘Π°Π·ΠΎΠ²Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€

Π˜ΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌ Π»ΠΎΠ³Π³Π΅Ρ€ ΠΈΠ· logzero Π² Ρ„Π°ΠΉΠ» python ΠΈ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ 4 ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° ΡƒΡ€ΠΎΠ²Π½Π΅ΠΉ логирования. Как Π²ΠΈΠ΄ΠΈΠΌ, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ ΠΈΠΌΠ΅Π΅Ρ‚ свой Ρ†Π²Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ Π΅Π³ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅.
Π›ΠΎΠ³ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π² Python с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Logzero. Ротация Π»ΠΎΠ³-Ρ„Π°ΠΉΠ»Π°

НС стоит ΡΠΎΡ…Ρ€Π°Π½ΡΡ‚ΡŒ всС записи Π² ΠΎΠ΄ΠΈΠ½ Π»ΠΎΠ³-Ρ„Π°ΠΉΠ», ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ½ становится массивным ΠΈ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Π΅Ρ‚ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ Π½Π° систСму.

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ maxBytes ΠΈ backupCount для Ρ€ΠΎΡ‚Π°Ρ†ΠΈΠΈ Ρ„Π°ΠΉΠ»Π° с Π·Π°Ρ€Π°Π½Π΅Π΅ Π·Π°Π΄Π°Π½Π½Ρ‹ΠΌ Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ. Когда Ρ€Π°Π·ΠΌΠ΅Ρ€ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ΅Π½, Ρ„Π°ΠΉΠ» закроСтся, Π° Π½ΠΎΠ²Ρ‹ΠΉ Ρ„Π°ΠΉΠ» для Π²Ρ‹Π²ΠΎΠ΄Π° откроСтся автоматичСски. ΠŸΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ происходит ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° Π΄Π»ΠΈΠ½Π° Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ Π»ΠΎΠ³-Ρ„Π°ΠΉΠ»Π° составляСт ΠΏΠΎΡ‡Ρ‚ΠΈ maxBytes. Если maxBytes ΠΈΠ»ΠΈ backupCount Ρ€Π°Π²Π΅Π½ Π½ΡƒΠ»ΡŽ, ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Π½Π΅ происходит.
ИспользованиС ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° in

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ in позволяСт ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ, содСрТится Π»ΠΈ элСмСнт Π² спискС.

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ провСряСм, содСрТится Π»ΠΈ Π² спискС Ρ„Ρ€ΡƒΠΊΡ‚ΠΎΠ² элСмСнт 'apple' ΠΈ 'grape'.
Π›ΠΎΠ³ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π² Python с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Logzero. ЭкзСмпляры ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΡ… Π»ΠΎΠ³Π³Π΅Ρ€ΠΎΠ²

ВмСсто использования Π»ΠΎΠ³Π³Π΅Ρ€Π° ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ экзСмпляры Π»ΠΎΠ³Π³Π΅Ρ€Π° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ logzero.setup_logger(..). Он Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ настроСнный экзСмпляр Π»ΠΎΠ³Π³Π΅Ρ€Π° с Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ, Ρ‚Π°ΠΊΠΈΠΌΠΈ ΠΊΠ°ΠΊ имя, имя Π»ΠΎΠ³-Ρ„Π°ΠΉΠ»Π°, Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅, maxBytes, backupCount ΠΈ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ логирования.
Π›ΠΎΠ³ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π² Python с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Logzero. Установка ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ форматирования

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

Π’ Python ΠΌΡ‹ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΏΠΎΠΌΠ΅Ρ‰Π°Π΅ΠΌ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово pass Π² качСствС заполнитСля для нСнаписанного ΠΊΠΎΠ΄Π°. Но ΠΌΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎΡ‚ΠΎΡ‡ΠΈΠ΅ для этой Ρ†Π΅Π»ΠΈ.
Бписок всСх ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…

Π­Ρ‚Π° магичСская ΠΊΠΎΠΌΠ°Π½Π΄Π° Π²Ρ‹Π΄Π°Π΅Ρ‚ список всСх Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… Π² вашСм Π±Π»ΠΎΠΊΠ½ΠΎΡ‚Π΅.

Для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ°, ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ этот Ρ‚ΠΈΠΏ послС магичСской ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹. ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹ΠΉ Π²Ρ‹ΡˆΠ΅ ΠΊΠΎΠ΄ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅Ρ‚ всС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ строкового Ρ‚ΠΈΠΏΠ° Π² качСствС Π²Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ….
Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ html-скрипта

%% html позволяСт Π½Π°ΠΌ ΠΏΠΈΡΠ°Ρ‚ΡŒ html-ΠΊΠΎΠ΄ Π² ячСйкС. Π’Π΅ΠΏΠ΅Ρ€ΡŒ ячСйка Π±ΡƒΠ΄Π΅Ρ‚ Π΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ html-Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ с html-Π²Ρ‹Π²ΠΎΠ΄ΠΎΠΌ ячСйки.

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠ΄ состоит ΠΈΠ· простой Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, созданной Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ html. Π—Π°ΠΌΠ΅Ρ‚ΡŒΡ‚Π΅, Ρ‡Ρ‚ΠΎ html-Π²Ρ‹Π²ΠΎΠ΄ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅Ρ‚ ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΡƒΡŽ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ.
ВычисляСм врСмя выполнСния

Π­Ρ‚ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΠΎΠ»Π΅Π·Π΅Π½, ΠΊΠΎΠ³Π΄Π° Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π·Π½Π°Ρ‚ΡŒ, сколько Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ трСбуСтся для выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈΠ»ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.
ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π³Ρ€Π°Ρ„ΠΈΠΊΠΎΠ² Matplotlib

%matplotlib inline
β€Šβ€”β€ŠΡΡ‚ΠΎ самая популярная магичСская ΠΊΠΎΠΌΠ°Π½Π΄Π°. Она позволяСт ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ Π² Π±Π»ΠΎΠΊΠ½ΠΎΡ‚Π°Ρ… Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ Matplotlib. Π­Ρ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½ΡƒΡŽ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ Matplotlib для Π±Π»ΠΎΠΊΠ½ΠΎΡ‚Π° Jupyter.
ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π°Ρ информация ΠΎΠ± ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π΅

%pinfo прСдоставляСт ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎΠ± ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ пСрСдаСтся вмСстС с Π½ΠΈΠΌ. Она ΠΏΠΎΡ…ΠΎΠΆΠ° Π½Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ object?.
ΠžΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ

ΠžΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°Ρ‚ΡŒ количСство ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΉ Π½ΡƒΠΆΠ½ΠΎ для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ всС значСния Π² памяти Π΄ΠΎ ΠΈΡ… итСрирования. Π­Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒ слишком ΠΌΠ½ΠΎΠ³ΠΎ памяти Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… сцСнариях. Випичная ΡΠΈΡ‚ΡƒΠ°Ρ†ΠΈΡβ€Šβ€”β€ŠΡ‡Ρ‚Π΅Π½ΠΈΠ΅ строчСк ΠΈΠ· Ρ„Π°ΠΉΠ»Π°.
Π˜Ρ‚Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹

Π’ Python ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚β€Šβ€”β€ŠΡΡ‚ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, Π½Π°Π΄ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ производятся Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Π΅ ΠΏΡ€ΠΎΡ…ΠΎΠ΄Ρ‹ (ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ). НапримСр, ΠΊΠ°ΠΊ Π² Ρ†ΠΈΠΊΠ»Π΅ for.
Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ Π½Π°Π±ΠΎΡ€Π½Ρ‹Ρ… структур Π΄Π°Π½Π½Ρ‹Ρ… ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΈΡ‚Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΌΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ. Π­Ρ‚ΠΎ списки, ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠΈ, Π½Π°Π±ΠΎΡ€Ρ‹. НапримСр, Π½ΠΈΠΆΠ΅ ΠΌΡ‹ создаём список ΠΈ проходимся ΠΏΠΎ Π΅Π³ΠΎ элСмСнтам ΠΏΠΎ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ.
Yield

Π”Ρ€ΡƒΠ³ΠΎΠΉ способ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ generatorβ€Šβ€”β€ŠΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€Π°. ΠœΡ‹ Π±Π΅Ρ€Ρ‘ΠΌ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово yield, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ generator Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.
Π”Π°Π²Π°ΠΉΡ‚Π΅ посмотрим, ΠΊΠ°ΠΊ сработаСт эта функция Π½Π° fib, Π³Π΄Π΅ возвращаСтся generator с n числами Π€ΠΈΠ±ΠΎΠ½Π°Ρ‡Ρ‡ΠΈ.