#python python... PYTHON πŸ”› πŸš€
11 subscribers
912 photos
7 videos
158 files
1.54K links
Download Telegram
Summarize300Bot, [Dec 5, 2024 at 12:13]
ПолноС руководство ΠΏΠΎ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ошибок Π² Python

ΠžΡΠ½ΠΎΠ²Ρ‹ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ошибок Π² Python
β€’ БущСствуСт Π΄Π²Π° основных стиля ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ошибок: LBYL ΠΈ EAFP.Link
β€’ LBYL Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ условий ΠΏΠ΅Ρ€Π΅Π΄ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ дСйствия, Ρ‡Ρ‚ΠΎ слоТно ΠΈ ΠΏΠΎΠ΄Π²Π΅Ρ€ΠΆΠ΅Π½ΠΎ состояниям Π³ΠΎΠ½ΠΊΠΈ.Link
β€’ EAFP выполняСт дСйствиС, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ ошибки, Ρ‡Ρ‚ΠΎ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚ΠΈΡ‚Π΅Π»ΡŒΠ½Π΅Π΅ Π² Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв.Link

ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с ΠΏΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚ΠΎΠΌ всСх ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ
β€’ ΠŸΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚ всСх ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ ΠΏΠΎΡ‚Π΅Ρ€Π΅ Π±Π°Π³ΠΎΠ², ΠΏΡ€ΠΎΡΠ²Π»ΡΡŽΡ‰ΠΈΡ…ΡΡ ΠΊΠ°ΠΊ Π½Π΅ΠΎΠΆΠΈΠ΄Π°Π½Π½Ρ‹Π΅ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ.Link
β€’ РСкомСндуСтся ΠΏΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ классы ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ ΠΈΠ»ΠΈ Π²ΠΎΠΎΠ±Ρ‰Π΅ Π½Π΅ ΠΏΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ ΠΈΡ….
Николай ΠšΡ€ΡƒΠΏΠΈΠΉ, [Dec 5, 2024 at 12:13]
МигСль Π“Ρ€ΠΈΠ½Π±Π΅Ρ€Π³, извСстный своим ΠΌΠ΅Π³Π°-Ρ‚ΡƒΡ‚ΠΎΡ€ΠΈΠ°Π»ΠΎΠΌ ΠΏΠΎ Flask написал большой пост ΠΏΡ€ΠΎ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ ошибок Π² python. Вопросы "ΠΊΠΎΠ³Π΄Π° ΠΈ ΠΊΠ°ΠΊΠΈΠ΅ ΡΠΊΡΠ΅ΠΏΡˆΠ΅Π½Ρ‹ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ" ΠΈ "ΠΎΡ‚ΠΊΡƒΠ΄Π° ΠΌΠ½Π΅ ΡƒΠ·Π½Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊΠΈΠ΅ ΡΠΊΡΠ΅ΠΏΡˆΠ΅Π½Ρ‹ Ρ‚ΡƒΡ‚ ΠΌΠΎΠ³ΡƒΡ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚ΡŒ" особСнно Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ Ρƒ Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ², я Π΄Π°ΠΆΠ΅ Ρƒ ΠΌΠΈΠ΄Π»ΠΎΠ² Π²ΠΈΠ΄Π΅Π» с этим затруднСния. Π‘Ρ‚Π°Ρ‚ΡŒΡ довольно длинная, Π½ΠΎ я ΠΎΡ‡Π΅Π½ΡŒ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΡŽ ΠΏΠΎΡ‚Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ врСмя ΠΈ ΠΏΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ https://blog.miguelgrinberg.com/post/the-ultimate-guide-to-error-handling-in-python

ΠžΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ΡΡ, Π½Π° Ρ…Π°Π±Ρ€Π΅ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π»ΠΈ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ ΡΡ‚Π°Ρ‚ΡŒΠΈ https://habr.com/ru/articles/853056/
Summarize300Bot, [Dec 5, 2024 at 12:13]
β€’ Ошибки ΠΌΠΎΠ³ΡƒΡ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Ρ‚ΡŒ Π±Π΅Π· нСобходимости ΠΈΡ… ΠΎΡ‚Π»Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒLink
β€’ Π£ΠΏΡ€ΠΎΡ‰Π΅Π½ΠΈΠ΅ обслуТивания ΠΈ чтСния ΠΊΠΎΠ΄Π°
β€’ Π›ΡƒΡ‡ΡˆΠΈΠΉ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ Π½Π°Π΄ Ρ€Π΅Π°ΠΊΡ†ΠΈΠ΅ΠΉ прилоТСния Π½Π° ошибкиLink

Различия ΠΌΠ΅ΠΆΠ΄Ρƒ ошибками Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΈ производствС
β€’ Π’ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΈΠ· строя для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈLink
β€’ Π’ производствС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ Π±Π΅Π·ΡƒΠΏΡ€Π΅Ρ‡Π½Ρ‹ΠΌLink
β€’ ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ошибок Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ Π² ΠΎΠ΄Π½ΠΎΠΌ мСстС ΠΈ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ ΠΎΡ‚ Π»ΠΎΠ³ΠΈΠΊΠΈ прилоТСнияLink

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ с ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строкой
β€’ Π’ Ρ€Π΅ΠΆΠΈΠΌΠ΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈLink
β€’ Рабочая вСрсия ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ‚ ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Ρ‚ΡŒ ошибки ΠΈ ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‰Π°Ρ‚ΡŒ сбоиLink
β€’ Π›ΠΎΠ³ΠΈΠΊΠ΅ прилоТСния Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ Π·Π½Π°Ρ‚ΡŒ ΠΎ различиях Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈLink

Π‘Ρ€Π°Π²Π½Π΅Π½ΠΈΠ΅ с Π²Π΅Π±-Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ°ΠΌΠΈ
β€’ МногиС Π²Π΅Π±-Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ Ρ€Π΅ΠΆΠΈΠΌ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈΠ»ΠΈ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈLink
β€’ РСшСниС, ΠΏΠΎΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ Π² CLI-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ, ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌΠΎ ΠΊ Π²Π΅Π±-прилоТСниямLink

Π’Ρ‹Π²ΠΎΠ΄
β€’ Π‘Ρ‚Π°Ρ‚ΡŒΡ ΡƒΡ‡ΠΈΡ‚ Π»ΡƒΡ‡ΡˆΠ΅ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄ для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ошибокLink
Summarize300Bot, [Dec 5, 2024 at 12:13]
β€’ ΠŸΡ€ΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠΈ вопросов ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ Π·Π° ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ
Summarize300Bot, [Dec 5, 2024 at 12:13]
ПолноС руководство ΠΏΠΎ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ошибок Π² Python

ΠžΡΠ½ΠΎΠ²Ρ‹ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ошибок Π² Python
β€’ БущСствуСт Π΄Π²Π° основных стиля ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ошибок: LBYL ΠΈ EAFP.Link
β€’ LBYL Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ условий ΠΏΠ΅Ρ€Π΅Π΄ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ дСйствия, Ρ‡Ρ‚ΠΎ слоТно ΠΈ ΠΏΠΎΠ΄Π²Π΅Ρ€ΠΆΠ΅Π½ΠΎ ошибкам.Link
β€’ EAFP выполняСт дСйствиС ΠΈ устраняСт ошибки, Ρ‡Ρ‚ΠΎ ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚ΠΈΡ‚Π΅Π»ΡŒΠ½Π΅Π΅ Π² Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв.Link

ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с LBYL
β€’ LBYL Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ знания всСх Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΡ‡ΠΈΠ½ ошибок, Ρ‡Ρ‚ΠΎ слоТно.Link
β€’ Π’ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ условия Π³ΠΎΠ½ΠΊΠΈ ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ΅ условий ΠΏΠ΅Ρ€Π΅Π΄ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ дСйствия.Link

ΠŸΡ€Π΅ΠΈΠΌΡƒΡ‰Π΅ΡΡ‚Π²Π° EAFP
β€’ EAFP позволяСт Ρ†Π΅Π»Π΅Π²ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ ошибки ΠΈ ΡΠΎΠΎΠ±Ρ‰Π°Ρ‚ΡŒ ΠΎ Π½ΠΈΡ….Link
β€’ Π’Π°ΠΆΠ½ΠΎ Π·Π½Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊΠΈΠ΅ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΏΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ сбоСв.Link

ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ошибок Π² Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΌ ΠΌΠΈΡ€Π΅
β€’ Ошибки ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠ»Π°ΡΡΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎ ΠΏΡ€ΠΎΠΈΡΡ…ΠΎΠΆΠ΄Π΅Π½ΠΈΡŽ ΠΈ исправимости.Link
β€’ НовыС ошибки Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚ Π² ΠΊΠΎΠ΄Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΡ… ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ.Link
β€’ Π’ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ ошибки Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚ ΠΈΠ·-Π·Π° Π²Ρ‹Π·ΠΎΠ²ΠΎΠ² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ.Link

Π’ΠΈΠΏΡ‹ ошибок ΠΈ ΠΈΡ… ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°
β€’ Π˜ΡΠΏΡ€Π°Π²ΠΈΠΌΡ‹Π΅ ошибки ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΠΈ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ.Link
β€’ НСустранимыС ошибки Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ прСрывания выполнСния ΠΊΠΎΠ΄Π°.
Summarize300Bot, [Dec 5, 2024 at 12:13]
Link

ΠšΠ»Π°ΡΡΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡ ошибок
β€’ Ошибки дСлятся Π½Π° Π½ΠΎΠ²Ρ‹Π΅ ΠΈ Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰ΠΈΠ΅.Link
β€’ НовыС ошибки Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΡŽΡ‚ΡΡ самим ΠΊΠΎΠ΄ΠΎΠΌ, Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ β€” Π²Ρ‹Π·Π²Π°Π½Π½Ρ‹ΠΌΠΈ функциями.Link
β€’ Ошибки ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ восстанавливаСмыми ΠΈΠ»ΠΈ нСвосстанавливаСмыми.Link

ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π½ΠΎΠ²Ρ‹Ρ… восстанавливаСмых ошибок
β€’ Код ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ Π²ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΡΡ ΠΎΡ‚ ошибки ΠΈ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅.Link
β€’ ΠŸΡ€ΠΈΠΌΠ΅Ρ€: запись пСсни Π² Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ… с нСизвСстным Π³ΠΎΠ΄ΠΎΠΌ выпуска.Link

ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰ΠΈΡ… восстанавливаСмых ошибок
β€’ Ошибка всплыла ΠΈΠ· Π²Ρ‹Π·Π²Π°Π½Π½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Π½ΠΎ ΠΊΠΎΠ΄ ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΡΡ ΠΎΡ‚ Π½Π΅Ρ‘.Link

ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ошибок Ρ‚ΠΈΠΏΠ° 1: восстанавливаСмыС ошибки
Summarize300Bot, [Dec 5, 2024 at 12:13]
Link

ΠŸΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚ всСх ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ
β€’ ΠŸΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚ всСх ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΉ Π½Π° Π²Π΅Ρ€Ρ…Π½Π΅ΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅ ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π²Ρ‹Π»Π΅Ρ‚ прилоТСнияLink
β€’ ΠŸΡ€ΠΈΠΌΠ΅Ρ€: Flask ΠΈ Tkinter ΠΏΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚ всС ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π½Π° Π²Π΅Ρ€Ρ…Π½Π΅ΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅Link

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡ ΠΊΠΎΠ΄Π°
β€’ ИспользованиС Flask-SQLAlchemy для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ошибок Π±Π°Π· Π΄Π°Π½Π½Ρ‹Ρ…Link
β€’ ΠŸΡ€ΠΈΠΌΠ΅Ρ€: route записываСт сообщСниС ΠΎΠ± ошибкС ΠΈ ΠΎΡ‚ΠΊΠ°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ сСссию Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…
Summarize300Bot, [Dec 5, 2024 at 12:13]
β€’ Код Π·Π½Π°Π΅Ρ‚, ΠΊΠ°ΠΊ Π²ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΡΡ послС ошибки ΠΈ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚ΡƒLink
β€’ Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ EAFP для ΠΏΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚Π° ошибки ΠΈ восстановлСнияLink

ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ошибок Ρ‚ΠΈΠΏΠ° 2: нСвосстанавливаСмыС ошибки
β€’ Код Π½Π΅ Π·Π½Π°Π΅Ρ‚, ΠΊΠ°ΠΊ Π²ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒΡΡ, Π½ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΡƒΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠ΅ ΠΎΠ± ошибкСLink
β€’ Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ для увСдомлСния Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ стороныLink

ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ошибок Ρ‚ΠΈΠΏΠ° 3: Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ нСвосстанавливаСмыС ошибки
β€’ Код Π½Π΅ Π·Π½Π°Π΅Ρ‚, ΠΊΠ°ΠΊ Π²ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ, Π½ΠΎ позволяСт ошибкС Π²ΡΠΏΠ»Ρ‹Π²Π°Ρ‚ΡŒLink
β€’ НичСго Π½Π΅ дСлаСтся, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ошибка достигла уровня, Π³Π΄Π΅ Π΅Ρ‘ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ
Summarize300Bot, [Dec 5, 2024 at 12:13]
Link
Summarize300Bot, [Dec 5, 2024 at 12:13]
Link
β€’ Π’ ΠΏΡ€ΠΎΠ΄Π°ΠΊΡˆΠ΅Π½Π΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ всС ошибки ΠΈ ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π²Ρ‹Π»Π΅Ρ‚Ρ‹.Link
β€’ Π›ΠΎΠ³ΠΈΠΊΠ΅ прилоТСния Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ Π·Π½Π°Ρ‚ΡŒ ΠΎ различиях ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ.Link

РСализация Π² Π²Π΅Π±-Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ°Ρ…
β€’ МногиС Π²Π΅Π±-Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ Ρ€Π΅ΠΆΠΈΠΌ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΈΠ»ΠΈ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ.Link
β€’ ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π²Ρ‹Π»Π΅Ρ‚ΠΎΠ² Π² консоли ΠΈΠ»ΠΈ Π²Π΅Π±-Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅.Link
β€’ РСшСниС, ΠΏΠΎΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ CLI-прилоТСния, Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ Π² Π²Π΅Π±-прилоТСниях.
Summarize300Bot, [Dec 5, 2024 at 12:13]
Link
β€’ Удобство управлСния рСакциями прилоТСния Π½Π° ошибки.Link
β€’ Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ измСнСния повСдСния Π² конфигурациях ΠΏΡ€ΠΎΠ΄Π°ΠΊΡˆΠ΅Π½Π° ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ.Link

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ CLI-прилоТСния
β€’ Π’ Ρ€Π΅ΠΆΠΈΠΌΠ΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π²Ρ‹Π»Π΅Ρ‚Π°Π΅Ρ‚ для отобраТСния ошибок ΠΈ трассировок стСка.
Summarize300Bot, [Dec 5, 2024 at 12:13]
Link

ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ошибок Π² Flask
β€’ Flask ΠΏΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ всС ошибки ΠΈ записываСт ΠΈΡ… Π² Π»ΠΎΠ³.Link
β€’ Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ ΠΎΡˆΠΈΠ±ΠΊΡƒ 500 ΠΏΡ€ΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠΈ ошибки.Link
β€’ Π Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ Flask-SQLAlchemy ΠΎΡ‚ΠΊΠ°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ сСссию ΠΏΡ€ΠΈ ошибкС Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ….Link

ΠŸΡ€Π΅ΠΈΠΌΡƒΡ‰Π΅ΡΡ‚Π²Π° пСрСмСщСния Π»ΠΎΠ³ΠΈΠΊΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ошибок
β€’ ΠŸΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΠ΅ удобства ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ ΠΈ читаСмости ΠΊΠΎΠ΄Π°.
βœ…πŸ–₯ Pydantic vs. Attrs

Pydantic ΠΈΠΌΠ΅Π΅Ρ‚ Π²ΡΡ‚Ρ€ΠΎΠ΅Π½Π½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ…, Π½ΠΎ ΠΎΠ½Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎ памяти.

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

from attrs import define, field

@define
class UserAttrs:
name: str
age: int = field()

@age.validator
def check_age(self, attribute, value):
if value < 0:
raise ValueError("Возраст Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ")
return value # ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ любой ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ возраст

try:
user = UserAttrs(name="Bob", age=-1)
except ValueError as e:
print("ValueError:", e)


πŸ“Œ ΠŸΡ€ΠΈΠΌΠ΅Ρ€ (https://codecut.ai/python-data-models-pydantic-or-attrs)
#python
Forwarded from Π˜Π²Π°Π½
Black? Если Π²ΠΊΡ€Π°Ρ‚Ρ†Π΅, Ρ‚ΠΎ Ρ‡Ρ‚ΠΎ это? А Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ тяТСловато ΡΡ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ вопрос Π² Π“ΡƒΠ³Π»Π΅/Ρ‡Π°Ρ‚Π³ΠΏΡ‚ Π½Π° основС "black"
#python python... PYTHON πŸ”› πŸš€
Black? Если Π²ΠΊΡ€Π°Ρ‚Ρ†Π΅, Ρ‚ΠΎ Ρ‡Ρ‚ΠΎ это? А Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ тяТСловато ΡΡ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ вопрос Π² Π“ΡƒΠ³Π»Π΅/Ρ‡Π°Ρ‚Π³ΠΏΡ‚ Π½Π° основС "black"
Π£Ρ‡ΠΈΡΡŒ)
- https://chatgpt.com/share/67a1b96c-82a8-8009-b207-2ca96f740405

И isort сразу добавь.

Ну, кстати, Π΄Π°Π²Π°ΠΉ ΡƒΠΆ ΠΈ #mypy сразу ΠΎΡΠΈΠ»ΠΈΡ‚ΡŒ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉ!) Π’ΠΎΠΎΠ±Ρ‰Π΅
- Ρ‚Π΅ΠΌΠ° Ρ‚ΠΈΠΏΠΈΠ·Π°Ρ†ΠΈΠΈ Π² ΠΏΠΈΡ‚ΠΎΠ½ ΠΈ Π²ΠΎΠΎΠ±Ρ‰Π΅ Π² Π»ΡŽΠ±Ρ‹Ρ… Π΄Ρ€ΡƒΠ³ΠΈΡ… ЯП ΠΎΡ‡Π΅Π½ΡŒ большая, слоТная ΠΈ Π½Π΅ однозначная
- Π² ΠΏΠΈΡ‚ΠΎΠ½Π΅ типизация ΠΎΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Π°Ρ (Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Π°Ρ), Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ ΠΌΠ½ΠΎΠ³ΠΈΡ… Π΄Ρ€ΡƒΠ³ΠΈΡ… ЯП
- Π½ΠΎ Π² Ρ†Π΅Π»ΠΎΠΌ ΠΎΠ½ΠΈ всС (Ρ€Π°Π½Π΅Π΅ Π½Π΅ Β«Ρ‚ΠΈΠΏΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅Β» ЯП) двиТутся ΠΊ Π½Π΅ΠΉ (Π½Π°ΠΏΡ€, js -> ts)
- ΠΈ Ρ‚Π΅Π±Π΅ ΠΎΠ½Π° ΠΌΠΎΠΆΠ΅Ρ‚ сначала ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ излишнСй
- Π½ΠΎ Π½Π° всСх Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΠΈ ΡΠ΅Ρ€ΡŒΡ‘Π·Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ… сСйчас принято Π΅Ρ‘ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ!
- поэтому Π»ΡƒΡ‡ΡˆΠ΅ ΡƒΠΆΠ΅ сСйчас Π½Π°Ρ‡Π°Ρ‚ΡŒ с Π½Π΅ΠΉ Ρ€Π°Π·Π±ΠΈΡ€Π°Ρ‚ΡŒΡΡ
- Ρ‚Π΅ΠΌ Π±ΠΎΠ»Π΅Π΅ Ρ‡Ρ‚ΠΎ Ρƒ тСбя ΠΎΡ‡Π΅Π½ΡŒ простой ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, ΠΈ Π½Π°Ρ‡Π°Ρ‚ΡŒ с Π½Π΅Π³ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΌ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠΌ!
- со Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ ΠΊ Ρ‚Π΅Π±Π΅ Π½Π°Ρ‡Π½Ρ‘Ρ‚ ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΈ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΡΡ‚ΡŒ Ρ‚ΠΈΠΏΠΈΠ·Π°Ρ†ΠΈΠΈ 😁
- ΠΏΠΎΠ“ΠŸΠ’ΠΈ Π½Π° эту Ρ‚Π΅ΠΌΡƒ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ

#типизация (ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Π΅Π΅ Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒ Β«Π°Π½Π½ΠΎΡ‚Π°Ρ†ΠΈΠΈ Ρ‚ΠΈΠΏΠΎΠ²Β») Π² #python
Please open Telegram to view this post
VIEW IN TELEGRAM
πŸš€ ΠŸΠΎΠ»Π΅Π·Π½Ρ‹Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Python

PassivBot β€” бСсплатный Π±ΠΎΡ‚ для Ρ‚ΠΎΡ€Π³ΠΎΠ²Π»ΠΈ ΠΊΡ€ΠΈΠΏΡ‚ΠΎΠ²Π°Π»ΡŽΡ‚ΠΎΠΉ Π½Π° популярных Π±ΠΈΡ€ΠΆΠ°Ρ… с ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ исходным ΠΊΠΎΠ΄ΠΎΠΌ. Π‘ΠΎΡ‚ написан Π½Π° Python ΠΈ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ минимального Π²ΠΌΠ΅ΡˆΠ°Ρ‚Π΅Π»ΡŒΡΡ‚Π²Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ.

πŸ“ˆ Π’Π°ΠΊ ΠΊΠ°ΠΊ Ρ†Π΅Π½Ρ‹ Π½Π° Π±ΠΈΡ€ΠΆΠ°Ρ… постоянно скачут Π²Π²Π΅Ρ€Ρ…-Π²Π½ΠΈΠ· β€” Ρ†Π΅Π»ΡŒ Π±ΠΎΡ‚Π° Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ процСсс извлСчСния Π²Ρ‹Π³ΠΎΠ΄Ρ‹ с Ρ‚Π°ΠΊΠΈΡ… сдСлок. Π Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π½Π° спотовых ΠΈΠ»ΠΈ Ρ„ΡŒΡŽΡ‡Π΅Ρ€ΡΠ½Ρ‹Ρ… Ρ€Ρ‹Π½ΠΊΠ°Ρ…, ΠΏΡ€ΠΎΡΠ»ΡƒΡˆΠΈΠ²Π°Ρ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠ΅ сдСлки Ρ‡Π΅Ρ€Π΅Π· Π²Π΅Π±-сокСт, автоматичСски создавая ΠΈ отмСняя Π»ΠΈΠΌΠΈΡ‚Π½Ρ‹Π΅ ΠΎΡ€Π΄Π΅Ρ€Π° Π½Π° ΠΏΠΎΠΊΡƒΠΏΠΊΡƒ ΠΈ ΠΏΡ€ΠΎΠ΄Π°ΠΆΡƒ.

πŸ€– Π‘ΠΎΡ‚Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΌΠΎΠ΄Π΅Π»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° историчСских Π΄Π°Π½Π½Ρ‹Ρ… ΠΎ Ρ†Π΅Π½Π°Ρ… с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ встроСнного бэктСстСра. Π’ΠΊΠ»ΡŽΡ‡Π΅Π½ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ‚ΠΎΡ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ Π»ΡƒΡ‡ΡˆΠΈΠ΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΏΡƒΡ‚Π΅ΠΌ повторСния тысяч бэктСстов с Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ ΠΊΠ°Π½Π΄ΠΈΠ΄Π°Ρ‚Π°ΠΌΠΈ.

Π Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ с:
- Bybit
- Binance
- OKX
- Kucoin
- Bitget

🌐 GitHub/Π˜Π½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡ

@pythonpythonjobs
πŸš€Cookiecutter β€” это кроссплатформСнный инструмСнт ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки для быстрого создания ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² Π½Π° основС шаблонов!

🦾Он ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… языках программирования, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ Python, C ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅, упрощая настройку стандартных структур ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ² ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ².

πŸŽ“Cookiecutter позволяСт ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρ‹, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΊΠ°ΠΊ ΡƒΠ΄Π°Π»Ρ‘Π½Π½Ρ‹Π΅ ΡˆΠ°Π±Π»ΠΎΠ½Ρ‹ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΈΠ· GitHub), Ρ‚Π°ΠΊ ΠΈ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅, Π±Π΅Π· нСобходимости Π·Π½Π°Π½ΠΈΠΉ Python. Π˜Π½ΡΡ‚Ρ€ΡƒΠΌΠ΅Π½Ρ‚ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹, Ρ€Π°ΡΡˆΠΈΡ€ΡΠ΅ΠΌΠΎΡΡ‚ΡŒ, Ρ€Π°Π±ΠΎΡ‚Ρƒ с Π»ΡŽΠ±Ρ‹ΠΌ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠΌ Ρ„Π°ΠΉΠ»ΠΎΠ², Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΡŽ с pipx для ΡƒΠ΄ΠΎΠ±Π½ΠΎΠΉ установки.

βœ…Π›ΠΈΡ†Π΅Π½Π·ΠΈΡ: BSD-3-Clause

🌐Github

@pythonpythonjobs