Найти Ρ‚Π΅ΠΌΡƒ
Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° программиста

🐍❌ 10 основных ошибок Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… Python-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ²

ОглавлСниС

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

Автор: Python Russian, youtube.com/@PythonRussian

Но Π½Π°Ρ‡Π°Ρ‚ΡŒ Ρ…ΠΎΡ‡Ρƒ с истины, которая Π½Π΅ всСм ΠΈ Π½Π΅ всСгда ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Π°: ΠΌΡ‹ Ρ‡ΠΈΡ‚Π°Π΅ΠΌ ΠΊΠΎΠ΄ Π³ΠΎΡ€Π°Π·Π΄ΠΎ Ρ‡Π°Ρ‰Π΅, Ρ‡Π΅ΠΌ пишСм Π΅Π³ΠΎ. По сути, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ β€” это ΠΌΠ½ΠΎΠ³ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎΠ΅ Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° с пСриодичСским Π΅Π³ΠΎ написаниСм. ИмСнно ΠΏΠΎ этой ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅ ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹, ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Π΅ Π½ΠΈΠΆΠ΅, ΠΈ ΠΈΡ… Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Ρ‚Π°ΠΊ связаны ΠΈΠΌΠ΅Π½Π½ΠΎ с Ρ‡ΠΈΡ‚Π°Π΅ΠΌΠΎΡΡ‚ΡŒΡŽ ΠΊΠΎΠ΄Π°. Π§ΠΈΡ‚Π°Π΅ΠΌΠΎΡΡ‚ΡŒ особо ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π½Π° ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π΅, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΈ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ Π΄Ρ€ΡƒΠ³ΠΈΡ… людСй, Π° ΠΎΠ½ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ ваш ΠΊΠΎΠ΄. Но ΠΈ ΠΏΡ€ΠΈ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ Π² Π³ΠΎΡ€Π΄ΠΎΠΌ одиночСствС, Ρ‡ΠΈΡ‚Π°Π΅ΠΌΠΎΡΡ‚ΡŒ Π²Π°ΠΆΠ½Π°, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Ρ‡Π΅Ρ€Π΅Π· 2-3 мСсяца (ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½ΠΎ ΠΎΠΏΡ‹Ρ‚ΠΎΠΌ) Π²Ρ‹ просто сами Π½Π΅ смоТСтС ΠΏΠΎΠ½ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ написали. Понимая Π²Π°ΠΆΠ½ΠΎΡΡ‚ΡŒ читаСмости ΠΊΠΎΠ΄Π° Π² сообщСствС Python принято ΠΏΡ€ΠΈΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒΡΡ ΠΎΠ±Ρ‰Π΅Π³ΠΎ стиля написания ΠΊΠΎΠ΄Π° (Pep-8), Π° Ρ‚Π°ΠΊΠΆΠ΅ ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π·Π΅Π½Ρƒ, основныС полоТСния ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ, Π½Π°Π±Ρ€Π°Π² Π² консоли Python ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ import this.

А Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΠ΅Ρ€Π΅ΠΉΠ΄Π΅ΠΌ ΠΊ ошибкам.

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ ошибки

1. НСльзя Π½Π°Ρ‡Π°Ρ‚ΡŒ Π±Π΅Π³Π°Ρ‚ΡŒ, Π½Π΅ Π½Π°ΡƒΡ‡ΠΈΠ²ΡˆΠΈΡΡŒ Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ

ΠŸΠ΅Ρ€Π²ΡƒΡŽ ΠΎΡˆΠΈΠ±ΠΊΡƒ ΠΌΠΎΠΆΠ½ΠΎ философски Π½Π°Π·Π²Π°Ρ‚ΡŒ «нСльзя Π½Π°Ρ‡Π°Ρ‚ΡŒ Π±Π΅Π³Π°Ρ‚ΡŒ, Π½Π΅ Π½Π°ΡƒΡ‡ΠΈΠ²ΡˆΠΈΡΡŒ Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΒ». Она Β«Π±ΡŒΠ΅Ρ‚Β» Π½ΠΎΠ²ΠΈΡ‡ΠΊΠ° тСкстом "ModuleNotFoundError: No module named 'telebot'", Π½ΠΎ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ проявлСния. НС сСкрСт, Ρ‡Ρ‚ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΈ приходят Π² сообщСство Python с ΠΆΠ΅Π»Π°Π½ΠΈΠ΅ΠΌ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Π±ΠΎΡ‚Π° для Π’Π΅Π»Π΅Π³Ρ€Π°ΠΌΠ° ΠΈΠ»ΠΈ Дискорда.ΠžΠ±Ρ‹Ρ‡Π½ΠΎ ΠΏΡ€ΠΈ этом знания языка Π½ΡƒΠ»Π΅Π²Ρ‹Π΅: Π² Π»ΡƒΡ‡ΡˆΠ΅ΠΌ случаС просмотрСны нСсколько Π²ΠΈΠ΄Π΅ΠΎ Π² стилС «ПишСм Π±ΠΎΡ‚Π° Π·Π° 10 ΠΌΠΈΠ½ΡƒΡ‚ Π½Π° PythonΒ». Ни Ρ€Π°Π·Ρƒ Π½Π° ΠΌΠΎΠ΅ΠΉ памяти это Π½Π΅ ΠΊΠΎΠ½Ρ‡Π°Π»ΠΎΡΡŒ Ρ…ΠΎΡ€ΠΎΡˆΠΎ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ написаниС Π½Π΅ΠΊΠΎΠ΅Π³ΠΎ прилоТСния Ρ‡Π°Ρ‰Π΅ всСго заканчиваСтся Π½Π΅ΡƒΠ΄Π°Ρ‡Π΅ΠΉ, Ρ€Π°Π·ΠΎΡ‡Π°Ρ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π² Python ΠΈΠ»ΠΈ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Π² Ρ†Π΅Π»ΠΎΠΌ. Π­Ρ‚ΠΎ Π½Π΅ΡƒΠ΄Π΅Ρ€ΠΆΠΈΠΌΠΎΠ΅ ΠΆΠ΅Π»Π°Π½ΠΈΠ΅ сразу с ΠΏΠΎΡ€ΠΎΠ³Π°, Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ зная, Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ большоС ΠΈ Π½Π° этом Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ всСму, ΠΎΡ‡Π΅Π½ΡŒ ΠΌΠ½ΠΎΠ³ΠΈΡ… ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ Π² стан Ρ…Π΅ΠΉΡ‚Π΅Ρ€ΠΎΠ² ΠΏΠΈΡ‚ΠΎΠ½Π°, вСдь Π»Π΅Π³Ρ‡Π΅ Π²ΠΈΠ½ΠΈΡ‚ΡŒ язык, Ρ‡Π΅ΠΌ сСбя. НСльзя Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ слоТноС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π½Π΅ зная основ языка, Π΄Π°ΠΆΠ΅ Ссли Π΅ΡΡ‚ΡŒ сильноС ΠΆΠ΅Π»Π°Π½ΠΈΠ΅ ΠΈ пагубная ΠΌΡ‹ΡΠ»ΡŒ Β«ΠΏΠΎ Ρ…ΠΎΠ΄Ρƒ Π΄Π΅Π»Π° Π½Π°ΡƒΡ‡ΡƒΡΡŒΒ».

РСшСниС: ΠΠ°Ρ‡Π°Ρ‚ΡŒ с основ. Π‘ΠΎΡ‚ Π½ΠΈΠΊΡƒΠ΄Π° Π½Π΅ ΡƒΠ±Π΅ΠΆΠΈΡ‚ β€” просто ΠΎΡ‚Π»ΠΎΠΆΠΈΡ‚Π΅ Π΅Π³ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ Π΄ΠΎ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Python Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ освоСн хотя Π±Ρ‹ Π² Ρ€Π°ΠΌΠΊΠ°Ρ… ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ Ρ‚ΠΎΠΌΠ° ΠœΠ°Ρ€ΠΊΠ° Π›ΡƒΡ‚Ρ†Π°.

Π§ΠΈΡ‚Π°Ρ‚ΡŒ: ΠœΠ°Ρ€ΠΊ Π›ΡƒΡ‚Ρ† Β«Π˜Π·ΡƒΡ‡Π°Π΅ΠΌ PythonΒ» Π§Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ Π·Π½Π°Ρ‚ΡŒ для написания Π±ΠΎΡ‚Π°: asyncio (Ссли Π±ΠΎΡ‚ асинхроный), ООП, Π΄Π΅ΠΊΠΎΡ€Π°Ρ‚ΠΎΡ€Ρ‹, структуры Π΄Π°Π½Π½Ρ‹Ρ…, Ρ€Π°Π±ΠΎΡ‚Ρƒ с модулями ΠΈ ΠΈΠΌΠΏΠΎΡ€Ρ‚Π°ΠΌΠΈ, Ρ€Π°Π±ΠΎΡ‚Ρƒ с Π‘Π”.

🐍 Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° питониста

Π‘ΠΎΠ»ΡŒΡˆΠ΅ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Ρ… ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΠΎΠ² Π²Ρ‹ Π½Π°ΠΉΠ΄Π΅Ρ‚Π΅ Π½Π° нашСм Ρ‚Π΅Π»Π΅Π³Ρ€Π°ΠΌ-ΠΊΠ°Π½Π°Π»Π΅ Β«Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° питониста»

πŸπŸŽ“ Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° собСса ΠΏΠΎ Python

ΠŸΠΎΠ΄Ρ‚ΡΠ½ΡƒΡ‚ΡŒ свои знания ΠΏΠΎ Python Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π° нашСм Ρ‚Π΅Π»Π΅Π³Ρ€Π°ΠΌ-ΠΊΠ°Π½Π°Π»Π΅ Β«Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° собСса ΠΏΠΎ PythonΒ»

🐍🧩 Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π·Π°Π΄Π°Ρ‡ ΠΏΠΎ Python

Π˜Π½Ρ‚Π΅Ρ€Π΅ΡΠ½Ρ‹Π΅ Π·Π°Π΄Π°Ρ‡ΠΈ ΠΏΠΎ Python для ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ Π½Π° нашСм Ρ‚Π΅Π»Π΅Π³Ρ€Π°ΠΌ-ΠΊΠ°Π½Π°Π»Π΅ Β«Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π·Π°Π΄Π°Ρ‡ ΠΏΠΎ PythonΒ»

2. Π‘Π΅Π·Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠ΅ ΠΊ имСнованию

Π­Ρ‚ΠΎ ваТнСйшая ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°, с ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π½ΡƒΠΆΠ½ΠΎ Π±ΠΎΡ€ΠΎΡ‚ΡŒΡΡ с самого Π½Π°Ρ‡Π°Π»Π° освоСния языка. Π”Π°ΠΆΠ΅ Π² Π”Π·Π΅Π½Π΅ ΠŸΠΈΡ‚ΠΎΠ½Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ выводится Π² консоли ΠΏΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ import this, Π΅ΡΡ‚ΡŒ строка Readability counts. Π§ΠΈΡ‚Π°Π΅ΠΌΠΎΡΡ‚ΡŒ Π²Π°ΠΆΠ½Π°, ΠΊΠ°ΠΊ ΠΌΡ‹ ΡƒΠΏΠΎΠΌΠΈΠ½Π°Π»ΠΈ Π²Ρ‹ΡˆΠ΅. Π’Π΅Ρ€Π½ΡƒΡŽ ΠΏΡ€ΠΈΠ²Ρ‹Ρ‡ΠΊΡƒ Π½Π°Π΄ΠΎ Π²Ρ‹Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ с самого Π½Π°Ρ‡Π°Π»Π°, ΠΈΠ½Π°Ρ‡Π΅, Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚ – происходит ΠΏΡ€ΠΈΠ²Ρ‹ΠΊΠ°Π½ΠΈΠ΅ ΠΊ написанию Π½Π΅Π²Π΅Ρ€Π½Ρ‹Ρ… ΠΈΠΌΠ΅Π½ ΠΈ ΠΏΠΎΡ‚ΠΎΠΌ ΠΎΡ‚ Π½Π΅Π΅ слоТно ΠΈΠ·Π±Π°Π²ΠΈΡ‚ΡŒΡΡ. ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹:

Как ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ:

Имя для ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ, структуры Π΄Π°Π½Π½Ρ‹Ρ…, Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, класса Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΎΡ‚Ρ€Π°ΠΆΠ°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΎ собой прСдставляСт. Если это просто Π½Π΅ΠΊΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Ρ‚ΠΎ ΠΏΡƒΡΡ‚ΡŒ Π±ΡƒΠ΄Π΅Ρ‚ value, Ссли это студСнты, Ρ‚ΠΎ students ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅. Π§Ρ‚ΠΎΠ±Ρ‹ Ρ‡ΠΈΡ‚Π°ΡŽΡ‰ΠΈΠΉ ΠΌΠΎΠ³ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎ названию ΠΏΠΎΠ½ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ хранится Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΈΠ»ΠΈ Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ функция. НуТно Π±ΠΎΡ€ΠΎΡ‚ΡŒΡΡ с ΠΆΠ΅Π»Π°Π½ΠΈΠ΅ΠΌ Π½Π°Π·Ρ‹Π²Π°Ρ‚ΡŒ всС ΠΎΠ΄Π½ΠΎΠΉ Π±ΡƒΠΊΠ²ΠΎΠΉ ΠΈΠ»ΠΈ Π±ΡƒΠΊΠ²ΠΎΠΉ с индСксом, Ρ‚ΠΈΠΏΠ° x1. Π§ΠΈΡ‚Π°Ρ‚Π΅Π»ΠΈ вашСго ΠΊΠΎΠ΄Π°, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅ΡΡŒ ΠΈ Π²Ρ‹, Ρ‡Π΅Ρ€Π΅Π· нСсколько мСсяцСв, скаТут Π²Π°ΠΌ спасибо.

Π’Π°ΠΆΠ½ΠΎΠ΅ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅: Π½Π° своСй ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅ я встрСчал ΡΠΈΡ‚ΡƒΠ°Ρ†ΠΈΡŽ, которая являСтся ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΈΠ· Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»Π° β€” ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ использовался ΡƒΡ‡Π΅Π½Ρ‹ΠΌΠΈ-Ρ„ΠΈΠ·ΠΈΠΊΠ°ΠΌΠΈ, Ρƒ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρ†Π΅Π»Ρ‹ΠΉ ряд коэффициСнтов ΠΈΠΌΠ΅ΡŽΡ‚ ΠΊΡ€Π°Ρ‚ΠΊΡƒΡŽ Ρ„ΠΎΡ€ΠΌΡƒ Π² стилС ac_1, Π½ΠΎ ΠΏΡ€ΠΈ этом Π²ΠΏΠΎΠ»Π½Π΅ ΠΏΠΎΠ½ΡΡ‚Π½ΡƒΡŽ Ρ‡ΠΈΡ‚Π°ΡŽΡ‰ΠΈΠΌ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ‚Π°ΠΊ ΠΎΠ½ΠΈ ΠΈΠΌΠ΅Π½ΡƒΡŽΡ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ свои Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Ρ‹ ΠΈ Π½Π°Π·Ρ‹Π²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ-Ρ‚ΠΎ ΠΏΠΎ-Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ, ΠΊΠ°ΠΊ Ρ€Π°Π· нСльзя, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ ΠΈΡΠΏΠΎΡ€Ρ‚ΠΈΡ‚ΡŒ Ρ‡ΠΈΡ‚Π°Π΅ΠΌΠΎΡΡ‚ΡŒ.

Π§ΠΈΡ‚Π°Ρ‚ΡŒ: https://peps.python.org/pep-0008/

3. ИспользованиС Π² ΠΈΠΌΠ΅Π½Π°Ρ… названия встроСнных Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ

Π˜Π½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ нас Π½Π΅ ΠΏΡ€Π΅Π΄ΡƒΠΏΡ€Π΅Π΄ΠΈΡ‚ ΠΈ Π½Π΅ Π·Π°ΠΏΡ€Π΅Ρ‚ΠΈΡ‚ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ list = [1, 2, 3], Π½ΠΎ послС Ρ‚Π°ΠΊΠΎΠΉ записи ΠΌΡ‹ Β«ΠΏΠ΅Ρ€Π΅ΠΊΡ€Ρ‹Π»ΠΈΒ» доступ ΠΊ встроСнной Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ list ссылаСтся Π½Π° наш ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹ΠΉ список ΠΈΠ· 3-Ρ… элСмСнтов, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ ΠΎΡ‡Π΅Π½ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с Ρ‚Π°ΠΊΠΈΠΌ ΠΊΠΎΠ΄ΠΎΠΌ Π² дальнСйшСм. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ стоит ΠΈΠ·Π±Π΅Π³Π°Ρ‚ΡŒ Π½Π°Π·Ρ‹Π²Π°Ρ‚ΡŒ свои ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅, ΠΌΠΎΠ΄ΡƒΠ»ΠΈ ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ встроСнных Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ. Π‘Π°ΠΌΡ‹Π΅ частыС ΠΆΠ΅Ρ€Ρ‚Π²Ρ‹ Ρ‚Π°ΠΊΠΎΠ³ΠΎ использования: list, str, string (ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Π² стандартной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅), dict, set, id, filter, json, all.

РСшСниС: ΠΊΠ°ΠΊ ΠΈ Π² ΠΏΡƒΠ½ΠΊΡ‚Π΅ 2 Ρ‚Ρ‰Π°Ρ‚Π΅Π»ΡŒΠ½Π΅Π΅ ΠΏΡ€ΠΎΠ΄ΡƒΠΌΡ‹Π²Π°Ρ‚ΡŒ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅, Π·Π½Π°Ρ‚ΡŒ встроСнныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ. ВстроСнныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ: https://docs.python.org/3.12/library/functions.html#built-in-funcs

4. ИспользованиС старых Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠ² Ρ€Π°Π±ΠΎΡ‚Ρ‹ со строкой ΠΈ конкатСнация строк

Π£ΠΆΠ΅ Π΄Π°Π²Π½ΠΎ появились ΠΌΠΎΠ΄Π½Ρ‹Π΅ ΠΈ ΠΌΠΎΠ»ΠΎΠ΄Π΅ΠΆΠ½Ρ‹Π΅ f-строки, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΎΡ‰Π΅, Π½ΠΎ ΠΈ Ρ‡ΠΈΡ‚Π°Π΅ΠΌΠ΅Π΅, Π»Π΅Π³Ρ‡Π΅ Π² усвоСнии. Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ % ΠΈΠ»ΠΈ format, Ρ‚ΠΎ стоит ΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΡΡ ΠΈ ΠΏΠΎΠ΄ΡƒΠΌΠ°Ρ‚ΡŒ, ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΡ‰Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π·Π°Π΄ΡƒΠΌΠ°Π½Π½ΠΎΠ΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ f-строк. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, напоминаю, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ слоТСнии (ΠΊΠΎΠ½ΠΊΠ°Ρ‚Π΅Π½Π°Ρ†ΠΈΠΈ) строк ΠΌΡ‹ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π· создаСм Π½ΠΎΠ²Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΈ Ρ‡Π΅ΠΌ большС Ρƒ нас Ρ‚Π°ΠΊΠΈΡ… слоТСний, Ρ‚Π΅ΠΌ большС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² создаСтся. Π£ f-строк Π½Π΅Ρ‚ Ρ‚Π°ΠΊΠΎΠΉ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹.

ΠŸΠ»ΠΎΡ…ΠΎ:

Π₯ΠΎΡ€ΠΎΡˆΠΎ:

5. Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ лишнСй Ρ€Π°Π±ΠΎΡ‚Ρ‹

Π‘Π°ΠΌΡ‹ΠΉ яркий ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π΅ тСряСт с Π³ΠΎΠ΄Π°ΠΌΠΈ своСй популярности β€” это value = str(input()) Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ² строку, которая Π½Π°ΠΌ Π²Π΅Ρ€Π½Π΅Ρ‚ встроСнная функция input ΠΌΡ‹ Π΅Ρ‰Π΅ Ρ€Π°Π· пытаСмся ΠΏΡ€Π΅Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π΅Π΅ Π² строку, Ρ‡Ρ‚ΠΎ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ излишнС β€” строка ΠΎΡ‚ этого «строковСС» Π½Π΅ станСт. Π‘Π°ΠΌ этот ΠΏΠ°Ρ‚Ρ‚Π΅Ρ€Π½ str(input())встрСчаСтся Π½Π΅Ρ€Π΅Π΄ΠΊΠΎ Π² ΠΊΠΎΠ΄Π΅ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… ΠΈ явно ΠΈΠΌΠ΅Π΅Ρ‚ ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ источник, Π½ΠΎ я ΠΏΠΎΠΊΠ° Ρ‚Π°ΠΊ ΠΈ Π½Π΅ сумСл ΠΎΡ‚Ρ‹ΡΠΊΠ°Ρ‚ΡŒ Π΅Π³ΠΎ ΠΈ ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΎΡ‚ΠΊΡƒΠ΄Π° пошла эта ΠΌΠΎΠ΄Π° Π½Π° ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΈΠ½ΠΏΡƒΡ‚Π° ΠΊ строкС. Π‘ΡƒΠ΄Ρƒ Ρ€Π°Π΄, Ссли ΠΊΡ‚ΠΎ-Ρ‚ΠΎ ΠΏΡ€ΠΈΠΎΡ‚ΠΊΡ€ΠΎΠ΅Ρ‚ завСсу Ρ‚Π°ΠΉΠ½Ρ‹ ΠΈ сообщит источник этого ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π°.

Π•Ρ‰Π΅, ΠΊΠ°ΠΊ ΠΏΡ€ΠΈΠΌΠ΅Ρ€, value = a_dict.get("some_key", None) встрСчаСтся Π³ΠΎΡ€Π°Π·Π΄ΠΎ Ρ€Π΅ΠΆΠ΅, Π½ΠΎ ΡΡƒΡ‚ΡŒ Ρ‚Π° ΠΆΠ΅ самая: ΠΌΡ‹ просим Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ Π½Π°ΠΌ ΠΈΠ· словаря Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΠΊΠ»ΡŽΡ‡Ρƒ "some_key", Π° Ссли Π΅Π³ΠΎ Π½Π΅Ρ‚, Ρ‚ΠΎ Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ None. Но функция get Ρƒ словаря Π΄Π΅Π»Π°Π΅Ρ‚ это ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ это излишнС. Π’ΠΎ Π΅ΡΡ‚ΡŒ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΡ‚ΡŒ Π΄ΠΎ value = a_dict.get("some_key")

НС стоит Ρ‚Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ врСмя ΠΈ рСсурсы ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π° Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ выполняСтся ΠΏΠΎ-ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ.

6. ИспользованиС листкомпс вмСсто встроСнной Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ

List comprehension ΠΈΠ»ΠΈ сокращСнно листкомпс β€” это ΠΌΠΎΡ‰Π½Ρ‹ΠΉ ΠΈ ΠΎΡ‡Π΅Π½ΡŒ ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΉ инструмСнт для Ρ€Π°Π±ΠΎΡ‚Ρ‹ со списками, ΠΎΠ΄Π½Π°ΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ Π½ΡƒΠΆΠ½ΠΎ, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ссли Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΠΌΠ΅Π½ΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈ/ΠΈΠ»ΠΈ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ…. Если Π½Π΅Ρ‚ нСобходимости Π½ΠΈ Π² Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ, Π½ΠΈ Π² ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠΈ, Ρ‚ΠΎ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ листкомпс, ΠΎΠ½ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ затрудняСт ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ происходящСго, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π²ΡΡ‚Ρ€ΠΎΠ΅Π½Π½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

Π‘Ρ‚Π°Ρ‚ΡŒΡ ΠΏΠΎ Ρ‚Π΅ΠΌΠ΅

🐍 Π‘Π°ΠΌΠΎΡƒΡ‡ΠΈΡ‚Π΅Π»ΡŒ ΠΏΠΎ Python для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…. Π§Π°ΡΡ‚ΡŒ 5. ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ со списками ΠΈ списковыми Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡΠΌΠΈ

7. Π§Ρ€Π΅Π·ΠΌΠ΅Ρ€Π½ΠΎΠ΅ ΡƒΠ²Π»Π΅Ρ‡Π΅Π½ΠΈΠ΅ списками

ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ список Π² Python ΠΎΡ‡Π΅Π½ΡŒ прост ΠΈ ΡƒΠ΄ΠΎΠ±Π΅Π½ ΠΈ с Π½Π΅Π³ΠΎ начинаСтся знакомство со структурами Π΄Π°Π½Π½Ρ‹Ρ…. Π•Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Π² ΠΎΠ±ΡƒΡ‡Π°ΡŽΡ‰ΠΈΡ… ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ…, ΠΈ ΠΌΡ‹ быстро ΠΏΡ€ΠΈΠ²Ρ‹ΠΊΠ°Π΅ΠΌ ΠΊ Π½Π΅ΠΌΡƒ. Π­Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ Ρ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ список Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π²Π΅Π·Π΄Π΅, игнорируя Π±ΠΎΠ»Π΅Π΅ Π²Ρ‹Π³ΠΎΠ΄Π½Ρ‹Π΅ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Ρ‹ ΠΈ структуры Π΄Π°Π½Π½Ρ‹Ρ…. ΠŸΡ€ΠΈ написании ΠΊΠΎΠ΄Π° Ρ€ΡƒΠΊΠ° сама тянСтся ΠΊ ΠΊΠ½ΠΎΠΏΠΊΠ΅ с ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½ΠΎΠΉ скобкой ΠΈ с этой ΠΏΡ€ΠΈΠ²Ρ‹Ρ‡ΠΊΠΎΠΉ Π½Π°Π΄ΠΎ Π±ΠΎΡ€ΠΎΡ‚ΡŒΡΡ.

ΠΠ»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Ρ‹ списку:

  • Ρ‚Π°ΠΏΠ» (ΠΊΠΎΡ€Ρ‚Π΅ΠΆ) Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ быстрСС, Ρ‡Π΅ΠΌ список ΠΈ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ мСньшС памяти, Ссли Π½Π΅ ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΠ΅ΠΌ ΠΌΠ΅Π½ΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅, Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ Ρ€Π°ΡΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π΅Π³ΠΎ.
  • ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ (queue, deque) Π±ΠΎΠ»Π΅Π΅ подходят для ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ вставки Π² Π½Π°Ρ‡Π°Π»ΠΎ ΠΈΠ»ΠΈ ΠΊΠΎΠ½Π΅Ρ†, ΠΊΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ ΠΎΠ½ΠΈ потокобСзопасны.
  • Π½Π΅Ρ€Π΅Π΄ΠΊΠΎ список Π½Π°ΠΌ Π²ΠΎΠΎΠ±Ρ‰Π΅ Π½Π΅ Π½ΡƒΠΆΠ΅Π½ прямо здСсь ΠΈ сСйчас Π² Π³ΠΎΡ‚ΠΎΠ²ΠΎΠΌ Π²ΠΈΠ΄Π΅ (ΠΈΠ±ΠΎ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ ΠΏΠ°ΠΌΡΡ‚ΡŒ), Π»ΡƒΡ‡ΡˆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ гСнэксп, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ gen = (e**2 for e in range(1000_000)) Π½Π΅ Π·Π°ΠΉΠΌΠ΅Ρ‚ ΠΏΠ°ΠΌΡΡ‚ΡŒ Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ списка, Π½ΠΎ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΡ‚ΠΎΠΌ использован Π² Ρ†ΠΈΠΊΠ»Π΅.
  • сСт (мноТСство) быстрСС ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ Π½Π° Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ элСмСнта, Ссли Π½Π°ΠΌ Π½Π΅ Π½ΡƒΠΆΠ½Ρ‹ Π΄ΡƒΠ±Π»ΠΈΠΊΠ°Ρ‚Ρ‹, Ρ‚ΠΎ Π»ΡƒΡ‡ΡˆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ.

РСшСниС: Π·Π½Π°Ρ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ…, ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ ΠΈΡ… прСимущСства для Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ситуаций

8. ИспользованиС индСкса элСмСнта, Π³Π΄Π΅ ΠΎΠ½ Π½Π΅ Π½ΡƒΠΆΠ΅Π½

ИспользованиС индСкса элСмСнта, Π³Π΄Π΅ ΠΎΠ½ Π½Π΅ Π½ΡƒΠΆΠ΅Π½, ΠΏΠ°Ρ‚Ρ‚Π΅Ρ€Π½ range(len(a_list)) ΠžΠ±Ρ‹Ρ‡Π½ΠΎ это происходит Ρƒ Ρ‚Π΅Ρ…, ΠΊΡ‚ΠΎ ΠΏΡ€ΠΈΡˆΠ΅Π» ΠΈΠ· Π΄Ρ€ΡƒΠ³ΠΈΡ… языков программирования, ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ Ρ†ΠΈΠΊΠ» ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΈ для Π½ΠΈΡ… это ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€ ΠΏΠΎ индСксам

ΠŸΠΈΡ‚ΠΎΠ½ΠΈΡ‡Π½Ρ‹ΠΉ способ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Ρ‚ΠΎ ΠΆΠ΅ самоС:

Если ΠΆΠ΅ Π½Π°ΠΌ всС Ρ‚Π°ΠΊΠΈ Π½ΡƒΠΆΠ½Ρ‹ индСксы, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρ…ΠΎΡ‚ΠΈΠΌ ΠΏΠ΅Ρ‡Π°Ρ‚Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ элСмСнты с Ρ‡Π΅Ρ‚Π½Ρ‹ΠΌΠΈ индСксами, Ρ‚ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Π΅Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ enumerate

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎ enumerate: https://docs.python.org/3.12/library/functions.html#enumerate

9. НаписаниС своих вСлосипСдов, вмСсто использования встроСнных Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ

НаписаниС своих вСлосипСдов, вмСсто использования встроСнных Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ (all, any, bin). Π­Ρ‚ΠΎ связано ΠΎΠΏΡΡ‚ΡŒ ΠΆΠ΅ с ΠΏΠ»ΠΎΡ…ΠΈΠΌ Π·Π½Π°Π½ΠΈΠ΅ΠΌ Ρ‚Π΅Ρ… Π±Π°Ρ‚Π°Ρ€Π΅Π΅ΠΊ, Ρ‡Ρ‚ΠΎ встроСны Π² язык. По ΠΌΠΎΠ΅ΠΌΡƒ ΠΎΠΏΡ‹Ρ‚Ρƒ Ρ‡Π°Ρ‰Π΅ всСго ΡΡ‚Ρ€Π°Π΄Π°ΡŽΡ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ all ΠΈ any Π² Ρ‚ΠΎΠΌ ΠΏΠ»Π°Π½Π΅, Ρ‡Ρ‚ΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΈΡ… Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΈ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‚ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ Π² своСм ΠΊΠΎΠ΄Π΅, Π½Π΅ зная, Ρ‡Ρ‚ΠΎ всС Π΄Π°Π²Π½ΠΎ написано Π·Π° Π½ΠΈΡ…. Новички ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π·Π½Π°ΠΊΠΎΠΌΡ‹ со str, int, list, sum, min, max, Π½ΠΎ ΠΊΠΎΠ³Π΄Π° Ρ€Π΅Ρ‡ΡŒ Π·Π°Ρ…ΠΎΠ΄ΠΈΡ‚ ΠΎ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠΈ Π΄Π²ΠΎΠΈΡ‡Π½ΠΎΠ³ΠΎ прСдставлСния числа ΠΈΠ»ΠΈ получСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, Ρ‡Ρ‚ΠΎ всС элСмСнты структуры Π΄Π°Π½Π½Ρ‹Ρ… ΡƒΠ΄ΠΎΠ²Π»Π΅Ρ‚Π²ΠΎΡ€ΡΡŽΡ‚ ΡƒΡΠ»ΠΎΠ²ΠΈΡŽ, Ρ‚ΠΎ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ ΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

По сути, ΠΌΡ‹ написали Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ any, ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Ρ‚Π°ΠΊ:

10. Β«ΠŸΡ€ΠΎΠ³Π»Π°Ρ‚Ρ‹Π²Π°Π½ΠΈΠ΅Β» ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ ΠΈΠ»ΠΈ использованиС Π½Π΅ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Ρ… ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ

ΠœΡ‹ ΠΏΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Π΅ΠΌ с Π½ΠΈΠΌΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ΠΈΠ΄Π΅Ρ‚ Π½Π΅ Ρ‚Π°ΠΊ ΠΈ Ρ€Π΅Π°Π³ΠΈΡ€ΡƒΠ΅ΠΌ Π½Π° ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Π΅ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ситуации, Π½ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ это Π½ΡƒΠΆΠ½ΠΎ с ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ΠΌ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΈ Π·Π°Ρ‡Π΅ΠΌ ΠΌΡ‹ Π΄Π΅Π»Π°Π΅ΠΌ. ЧастоС проявлСниС ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹: «я запустил, Π½ΠΎ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ происходит ΠΈ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ ΠΏΠ°Π΄Π°Π΅Ρ‚Β».

Π°) ΠΏΡ€ΠΎΠ³Π»Π°Ρ‚Ρ‹Π²Π°Π½ΠΈΠ΅ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π² стилС

Π—Π΄Π΅ΡΡŒ, Π² случаС ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ ΠΌΡ‹ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π΅ Π·Π½Π°Π΅ΠΌ, Ρ‡Ρ‚ΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»ΠΎ, Π½ΠΎ ΠΈ Π½Π΅ прСдприняли Π½ΠΈΡ‡Π΅Π³ΠΎ для исправлСния β€” просто ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅ΠΌ Ρ€Π°Π±ΠΎΡ‚Ρƒ. Π­Ρ‚ΠΎ самый Π²Ρ€Π΅Π΄Π½Ρ‹ΠΉ ΠΏΠ°Ρ‚Ρ‚Π΅Ρ€Π½ Π² Ρ€Π°Π±ΠΎΡ‚Π΅, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΌΡ‹ ΠΏΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌ ΠΏΠΎΡ‡Ρ‚ΠΈ всС ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΈ Π½Π΅ Π·Π½Π°Π΅ΠΌ, Ρ‡Ρ‚ΠΎ ΡƒΠΏΠ°Π»ΠΎ.

Π±) нСдостаток Π΄Π°Π½Π½Ρ‹Ρ…

Π’ΡƒΡ‚ ΠΌΡ‹, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ, сообщили ΠΎ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ΅, Π½ΠΎ всС Π΅Ρ‰Π΅ Π½Π΅ Π·Π½Π°Π΅ΠΌ, Π² Ρ‡Π΅ΠΌ ΠΎΠ½Π° содСрТится, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π½Π΅Ρ€Π΅Π΄ΠΊΠΎ наша some_function ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π±Ρ€Π°ΡΡ‹Π²Π°Ρ‚ΡŒ Ρ€Π°Π·Π½Ρ‹Π΅ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ.

Π²) Π½Π΅ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ΅ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π—Π΄Π΅ΡΡŒ ΠΌΡ‹ Π²Ρ‹Π²Π΅Π»ΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅, Π½ΠΎ Ρ‡ΠΈΡ‚Π°ΡŽΡ‰Π΅ΠΌΡƒ нСясно, ΠΏΠΎΡ‡Π΅ΠΌΡƒ ΠΌΡ‹ ΠΏΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌ Π½Π΅ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ΅ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅. Π£ Π½Π΅Π³ΠΎ складываСтся Π²ΠΏΠ΅Ρ‡Π°Ρ‚Π»Π΅Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ some_function ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π±Ρ€ΠΎΡΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΡƒΠ³ΠΎΠ΄Π½ΠΎ.

ΠŸΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ:

ΠœΡ‹ ΠΏΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ΅ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎ Π²Ρ‹Π±Ρ€ΠΎΡΠΈΡ‚ΡŒ наша функция, сообщаСм ΠΎΠ± этом ΠΈ ΠΏΡ€Π΅Π΄ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅ΠΌ ΠΏΡ€ΠΈ нСобходимости ΠΊΠ°ΠΊΠΈΠ΅-Ρ‚ΠΎ дСйствия. ΠŸΡ€ΠΈ этом, Ссли ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ Π΄Ρ€ΡƒΠ³ΠΎΠ΅, Ρ‚ΠΎ ΠΌΡ‹ Ρ‚ΡƒΡ‚ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ справСдливо ΡƒΠΏΠ°Π΄Π΅ΠΌ, Π·Π°Π²Π΅Ρ€ΡˆΠΈΠ² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»ΠΎ Ρ‚ΠΎ, Ρ‡Π΅Π³ΠΎ ΠΌΡ‹ Π½Π΅ ΠΆΠ΄Π°Π»ΠΈ. А Ρ‡ΠΈΡ‚Π°ΡŽΡ‰Π΅ΠΌΡƒ наш ΠΊΠΎΠ΄ Π²ΠΏΠΎΠ»Π½Π΅ понятно, Ρ‡Ρ‚ΠΎ функция выбрасываСт Ρ‚ΠΎΠ»ΡŒΠΊΠΎ это ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ΅ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΈ Π½ΠΈΡ‡Π΅Π³ΠΎ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ Π½Π΅ ΠΆΠ΄Π΅Ρ‚.

***

Π’ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ΅ всС ошибки ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹, описанныС Π²Ρ‹ΡˆΠ΅, ΠΏΡ€ΠΎΠΈΡΡ‚Π΅ΠΊΠ°ΡŽΡ‚ просто ΠΎΡ‚ нСзнания ΠΈΠ»ΠΈ нСдостаточного освоСния основ Python ΠΈ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΈΠ· Π½ΠΈΡ… просто исчСзаСт ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ накоплСния ΠΎΠΏΡ‹Ρ‚Π°. Однако для ускорСния этого процСсса ΠΈ Ρ€Π°Π½Π½Π΅Π³ΠΎ формирования ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠ²Ρ‹Ρ‡Π΅ΠΊ я ΠΈ пСрСчислил Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ встрСчаСтся Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ часто. ΠšΡ€Π°ΠΉΠ½Π΅ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΌ ΡΡ‡ΠΈΡ‚Π°ΡŽ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠ»Π΅Π½ΠΈΠ΅ с Pep-8, ΠΎΠ±Ρ‰Π΅Π³ΠΎ для всСх стиля написания ΠΊΠΎΠ΄Π°, Π° Ρ‚Π°ΠΊΠΆΠ΅ напоминаю Π½Π΅ Π·Π°Π±Ρ‹Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎ Zen of Python

Наука
7 ΠΌΠ»Π½ ΠΈΠ½Ρ‚Π΅Ρ€Π΅ΡΡƒΡŽΡ‚ΡΡ