🐍 Укус ΠΏΠΈΡ‚ΠΎΠ½Π° 🐍
2.49K subscribers
1.05K photos
23 videos
285 links
🐍 Канал ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Π½Π° языкС Python. ВСматичСскиС ΡƒΡ€ΠΎΠΊΠΈ ΠΈ Π»Π°ΠΉΡ„Ρ…Π°ΠΊΠΈ.

πŸ‘½ Админ - @it_dashka
πŸ”Š ΠšΡƒΠΏΠΈΡ‚ΡŒ Ρ€Π΅ΠΊΠ»Π°ΠΌΡƒ: https://telega.in/c/byteofpython

πŸ‘‰ Π§Π°Ρ‚: @abyteofpython
πŸ‘‰ ΠŸΠΎΠ΄Π΅Π»ΠΈΡ‚ΡŒΡΡ с Π΄Ρ€ΡƒΠ·ΡŒΡΠΌΠΈ: @byteofpython
Download Telegram
Π§Ρ‚ΠΎ Π²Ρ‹Π²Π΅Π΄Π΅Ρ‚ ΠΊΠΎΠ΄?
Anonymous Poll
9%
0
43%
21
25%
None
23%
ΠžΡˆΠΈΠ±ΠΊΡƒ
➑️Boto3 ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ ΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ с AWS. Она прСдоставляСт простой ΠΈ понятный способ взаимодСйствия с Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ сСрвисами AWS, Ρ‚Π°ΠΊΠΈΠΌΠΈ ΠΊΠ°ΠΊ созданиС ΠΈ настройка Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… сСрвСров, ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹ΠΌ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ΠΌ, ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠ° сообщСний ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄Ρ€ΡƒΠ³ΠΎΠ΅.

➑️Botocore прСдставляСт собой Π½Π°Π±ΠΎΡ€ инструмСнтов ΠΈ клиСнтских Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Amazon Web Services (AWS). Она обСспСчиваСт Π½ΠΈΠ·ΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²Ρ‹ΠΉ доступ ΠΊ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌ сСрвисам AWS, Ρ‚Π°ΠΊΠΈΠΌ ΠΊΠ°ΠΊ Amazon S3, Amazon EC2 ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΠΌ Π΄Ρ€ΡƒΠ³ΠΈΠΌ. Botocore позволяСт Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ, ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΈ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ рСсурсы Π² ΠΎΠ±Π»Π°ΠΊΠ΅ AWS.

⬆️БиблиотСка botocore Ρ‚Π°ΠΊΠΆΠ΅ являСтся ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠΌ PyPI - ΠΊΡ€ΡƒΠΏΠ½Π΅ΠΉΡˆΠ΅Π³ΠΎ рСпозитория ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ² Python. PyPI прСдоставляСт доступ ΠΊ ΠΌΠΈΠ»Π»ΠΈΠΎΠ½Π°ΠΌ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² своих ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ…. Botocore позволяСт Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹, связанныС с AWS, ΠΈ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΈΠΌΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ простого ΠΈ ΡƒΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ
Π§Ρ‚ΠΎ Π²Ρ‹Π²Π΅Π΄Π΅Ρ‚ этот ΠΊΠΎΠ΄?
Anonymous Poll
20%
5
54%
10
19%
ΠžΡˆΠΈΠ±ΠΊΡƒ
6%
Π£Π·Π½Π°Ρ‚ΡŒ ΠΎΡ‚Π²Π΅Ρ‚
❔ЗачСм Π½ΡƒΠΆΠ½ΠΎ ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово async Π² Python?

ΠšΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово async Π² Python ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для создания асинхронных Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ (ΠΈΠ»ΠΈ ΠΊΠΎΡ€ΡƒΡ‚ΠΈΠ½), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π·Π°Π΄Π°Ρ‡ΠΈ, Π½Π΅ блокируя основной ΠΏΠΎΡ‚ΠΎΠΊ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π­Ρ‚ΠΎ особСнно ΠΏΠΎΠ»Π΅Π·Π½ΠΎ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ‚Π°ΠΊΠΈΠΌΠΈ опСрациями, ΠΊΠ°ΠΊ сСтСвыС запросы, взаимодСйствиС с Π±Π°Π·Π°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ»ΠΈ Ρ‡Ρ‚Π΅Π½ΠΈΠ΅/запись Ρ„Π°ΠΉΠ»ΠΎΠ².

Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ асинхронной Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ:
import asyncio

async def fetch_data():
print("Fetching data...")
await asyncio.sleep(2) # симуляция Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ
print("Data fetched")
return "Data"

async def main():
result = await fetch_data()
print(result)

# запуск асинхронной Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ
asyncio.run(main())

Как ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, async ΠΈΠ΄Ρ‘Ρ‚ Π² ΠΏΠ°Ρ€Π΅ с await, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ приостанавливаСт Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ fetch_data Π΄ΠΎ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ asyncio.sleep(2).
πŸ‘1
Π§Ρ‚ΠΎ Π²Ρ‹Π²Π΅Π΄Π΅Ρ‚ этот ΠΊΠΎΠ΄?
Anonymous Poll
17%
True
31%
False
49%
ΠžΡˆΠΈΠ±ΠΊΡƒ
2%
Π£Π·Π½Π°Ρ‚ΡŒ ΠΎΡ‚Π²Π΅Ρ‚
Π§Ρ‚ΠΎ Π²Ρ‹Π²Π΅Π΄Ρ‚Π΅ этот ΠΊΠΎΠ΄?
Anonymous Poll
5%
3
82%
3.0
13%
ΠžΡˆΠΈΠ±ΠΊΡƒ
1%
Π£Π·Π½Π°Ρ‚ΡŒ ΠΎΡ‚Π²Π΅Ρ‚
πŸ”ŽΠ˜Π½ΠΎΠ³Π΄Π°, ΠΏΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния Π½Π° Python, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡΡ‚ΠΎΠ»ΠΊΠ½ΡƒΡ‚ΡŒΡΡ с ситуациями, ΠΊΠΎΠ³Π΄Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ явно ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π½Π° Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ ошибки.

➑️Когда ΠΌΡ‹ пишСм ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΌΡ‹ стараСмся ΠΈΡ… Π΄Π΅Π»Π°Ρ‚ΡŒ максимально Π½Π°Π΄Π΅ΠΆΠ½Ρ‹ΠΌΠΈ ΠΈ бСзопасными. Однако, ΠΈΠ½ΠΎΠ³Π΄Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚ΡŒ ситуация, ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ явно ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π½Π° Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹. НапримСр, Ссли Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‚ΡΡ Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹Π΅ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΈΠ·-Π·Π° Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠ³ΠΎ состояния

➑️ИспользованиС ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° raise

ΠžΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ raise Π² Python позволяСт Π½Π°ΠΌ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ. ΠœΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Ρ‚ΠΈΠΏ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ сообщСниС, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒΡΡ Π² ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ.

βž‘οΈΠ’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ использования ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° raise:

def divide_numbers(a, b):
if b == 0:
raise ValueError("Π”Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π½ΡƒΠ»Π΅ΠΌ")
return a / b

try:
result = divide_numbers(10, 0)
print("Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚:", result)
except ValueError as e:
print("Ошибка:", str(e))
This media is not supported in your browser
VIEW IN TELEGRAM
erid: LjN8KALxJ

Π•ΡΡ‚ΡŒ Π΄Π²Π° стула…Python ΠΈΠ»ΠΈ Go. На ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Kubernetes

▢️ Как ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ k8s ΠΊΠ°ΠΊ API, Π΄Π°ΠΆΠ΅ Π½Π΅ зная Π΅Π³ΠΎ устройства? 
▢️ Как ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΏΡ€ΠΈ этом симбиоз ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠΎΠ΄ΠΎΠΌ ΠΈ Ρ†Π΅Π»Ρ‹ΠΌ кластСром?πŸ€”
▢️ Как Π² k8s ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΡ‚ΡŒ бизнСс-Π»ΠΎΠ³ΠΈΠΊΡƒ ΠΈ инфраструктуру с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠΈΠ»Π»ΠΈΠΎΠ½ΠΎΠ² строк ΠΊΠΎΠ΄Π°? 

Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ ΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Golang, ΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Python. 
РасскаТСм ΠΈ ΠΏΠΎΠΊΠ°ΠΆΠ΅ΠΌ ΠΊΠ°ΠΊ Π½Π° бСсплатном Π²Π΅Π±ΠΈΠ½Π°Ρ€Π΅ ΠΎΡ‚ Π‘Π»Ρ‘Ρ€ΠΌΠ° 21 августа Π² 19:00 мск⚑

А дальшС β€” Π²Ρ‹Π±ΠΎΡ€ Π·Π° Π²Π°ΠΌΠΈ. Какой стул Π²Ρ‹Π±Π΅Ρ€Π΅Ρ‚Π΅?

Π‘ΠΏΠΈΠΊΠ΅Ρ€: Π’ΠΈΡ‚Π°Π»ΠΈΠΉ Π›ΠΈΡ…Π°Ρ‡Π΅Π², SRE Π² booking.com, ex-Avito Senior Software Engineer.

ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΡΡ‚ΠΈ Π² Π±ΠΎΡ‚Π΅ @GolangPython_Bot
ΠŸΡ€ΠΈΡΠΎΠ΅Π΄ΠΈΠ½ΡΠΉΡ‚Π΅ΡΡŒ!

Π Π΅ΠΊΠ»Π°ΠΌΠ°. ООО "Π‘Π›ΠΠ Πœ". ИНН 3652901451.