Telegram Group & Telegram Channel
🧵 Как упростить отладку Python-скриптов с помощью breakpoint()

Привет! Сегодня хочу поделиться небольшим, но очень полезным трюком, который многие почему-то упускают — встроенная функция breakpoint().

С версии Python 3.7 и выше ты можешь просто вставить breakpoint() в нужное место кода, и он сразу остановится, запустив интерактивный отладчик. По умолчанию это pdb, но можно переопределить через переменную окружения PYTHONBREAKPOINT.

Пример:


def calculate(x, y):
result = x * y
breakpoint()
return result + 1

calculate(3, 5)


В момент вызова breakpoint() ты окажешься прямо в интерактивной сессии: можно смотреть переменные, шагать по коду и т.д.

🔥 Почему это удобно:

* Не нужно импортировать pdb вручную
* Работает в любом месте — в скриптах, Django-представлениях, Flask-хендлерах
* Легко отключается: запусти скрипт с PYTHONBREAKPOINT=0, и breakpoint() будет просто игнорироваться

Пользуетесь ли вы этой фичей в повседневной работе? Или все еще вставляете print()? 😄

Подписывайтесь на канал 👉@pythonofff



tg-me.com/pythonofff/2912
Create:
Last Update:

🧵 Как упростить отладку Python-скриптов с помощью breakpoint()

Привет! Сегодня хочу поделиться небольшим, но очень полезным трюком, который многие почему-то упускают — встроенная функция breakpoint().

С версии Python 3.7 и выше ты можешь просто вставить breakpoint() в нужное место кода, и он сразу остановится, запустив интерактивный отладчик. По умолчанию это pdb, но можно переопределить через переменную окружения PYTHONBREAKPOINT.

Пример:


def calculate(x, y):
result = x * y
breakpoint()
return result + 1

calculate(3, 5)


В момент вызова breakpoint() ты окажешься прямо в интерактивной сессии: можно смотреть переменные, шагать по коду и т.д.

🔥 Почему это удобно:

* Не нужно импортировать pdb вручную
* Работает в любом месте — в скриптах, Django-представлениях, Flask-хендлерах
* Легко отключается: запусти скрипт с PYTHONBREAKPOINT=0, и breakpoint() будет просто игнорироваться

Пользуетесь ли вы этой фичей в повседневной работе? Или все еще вставляете print()? 😄

Подписывайтесь на канал 👉@pythonofff

BY Python академия




Share with your friend now:
tg-me.com/pythonofff/2912

View MORE
Open in Telegram


telegram Telegram | DID YOU KNOW?

Date: |

Traders also expressed uncertainty about the situation with China Evergrande, as the indebted property company has not provided clarification about a key interest payment.In economic news, the Commerce Department reported an unexpected increase in U.S. new home sales in August.Crude oil prices climbed Friday and front-month WTI oil futures contracts saw gains for a fifth straight week amid tighter supplies. West Texas Intermediate Crude oil futures for November rose $0.68 or 0.9 percent at 73.98 a barrel. WTI Crude futures gained 2.8 percent for the week.

Among the actives, Ascendas REIT sank 0.64 percent, while CapitaLand Integrated Commercial Trust plummeted 1.42 percent, City Developments plunged 1.12 percent, Dairy Farm International tumbled 0.86 percent, DBS Group skidded 0.68 percent, Genting Singapore retreated 0.67 percent, Hongkong Land climbed 1.30 percent, Mapletree Commercial Trust lost 0.47 percent, Mapletree Logistics Trust tanked 0.95 percent, Oversea-Chinese Banking Corporation dropped 0.61 percent, SATS rose 0.24 percent, SembCorp Industries shed 0.54 percent, Singapore Airlines surrendered 0.79 percent, Singapore Exchange slid 0.30 percent, Singapore Press Holdings declined 1.03 percent, Singapore Technologies Engineering dipped 0.26 percent, SingTel advanced 0.81 percent, United Overseas Bank fell 0.39 percent, Wilmar International eased 0.24 percent, Yangzijiang Shipbuilding jumped 1.42 percent and Keppel Corp, Thai Beverage, CapitaLand and Comfort DelGro were unchanged.

telegram from us


Telegram Python академия
FROM USA