وب لاگ امیرحسین اسعدی

آنچه یادگرفتم، خواندم و دیدم رو اینجا به اشتراک می‌گذارم
I share what I learned, read and saw

طبقه بندی موضوعی
آخرین نظرات
  • ۸ خرداد ۰۲، ۱۵:۲۲ - احمد صداقت زاده
    عالی

۱ مطلب با کلمه‌ی کلیدی «ipdb» ثبت شده است

دیباگ کردن پایتون در گوگل کولب

به روزرسانی: ۲۰تیر

اگر شما هم ترجیح میدن به جای کد زدن توی محیط‌های برنامه‌نویسی، بدون دردسر نصب کتابخونه‌ها در گوگل کلب کد بزنید، احتمالا دلتون برای بعضی ویژگی‌های خوب اونجا تنگ شده مثلا یک workspaceکه بتونید توش متغیر‌ها و اندازه شون و مقدار درونشون رو ببینید، یا دیباگری که بتونید کدهاتون رو خط به خط اجرا کنید. برای اجرا کردن خط به خط کد‌ها می‌تونید از کتابخونه ipdb استفاده کنید. برای نصبش کافیه دستور زیر رو اجرا کنید:

!pip install -Uqq ipdb
و بعد فراخوانیش کنید

import ipdb

اگر خواستین بهش بفهمونید هرجا که خطا داره درست میشه برنامه رو متوقف کنه از این دستور استفاده کنید

%pdb on

و اگه خواستین خاموشش کنید کافیه این دستور رو اجرا کنید
%pdb off
اگر میخواهید در قسمت خاصی از کد break point بگذارید از این دستور استفاده کنید:

ipdb.set_trace()

اگر خواستین که کد‌های بیشتری اطراف کدی که داره اجرا میشه رو ببینید، می‌تونید دستور بالا رو به این صورت تغییر بدین الان ۶ خط از بالا و ۶ خط از پایین رو نشون میده:

ipdb.set_trace(context = 12)

وقتی اجرای کد متوقف بشه حالا می‌تونید کامندهای دلخواه تون رو وارد کنید، مثلا:

دستور

توضیح

h(elp)

نشون دادن‌ راهنما

h(elp) COMMAND

نشون دادن راهنمای یک دستور خاص

c(ontinue)

ادامه اجرای کد تا رسیدن به بریک پوینت بعدی

n(ext)

اجرای خط بعدی

s(tep)

اجرای کد بعدی(اگه تابعی باشه میره داخل)

r(eturn)

اجرا تا دستور ریترن

l(ist)

نمایش کدهای بیشتری در اطراف خط اجرایی

w(here)

Shows the stacktrace i.e. the chain of functions
that made it reach the current function

a(rguments)

نمایش لیستی از آرگومان‌های پاس شده به تابع و مقداری که داشتن

q(uit)

خروج از دیباگر

حواستون باشه که نمیشه هرجا خواستین بریک پوینت بذارین یا باید داخل یک تابع باشه یا داخل حلقه for

 

منبع(+)