نسجل كائنًا مؤلفًا ونراقب الاستدعاءات. [1] [2]
الخلاصة السريعة
المثال
import webbrowser as w
calls=[]
def ctor(): calls.append("ctor"); return d
class Demo:
def open(self,*args,**kwargs): calls.append("open")
d=Demo()
w.register("own",ctor,instance=d)
print(w.get("own") is d)
print(calls)الاختيار والأثر
عندما نقدم instance، يعاد كائننا؛ فحص is يختبر هويته. سجل calls فارغ: لا منشئ ولا open. إذا حذفنا instance=d في مثالنا، يصبح السجل ["ctor"] بعد get؛ يظل open غير مستدعى. [1] [2]

الحدود
Demo كائن توضيحي، لا متصفحًا كاملًا. لم نمرر عنوانًا أو نفحص تحميل صفحة. لا نعمم خلو الأثر على منشئ مخصص آخر، ولا نغيّر متصفح نظام التشغيل. [1] [2]
المراجع
- Python: webbrowser.get/register
- CPython3.12.14: webbrowser.py
- موضوع تك: لغة بايثون — مفردات
- موضوع تك: تطبيقات بايثون — مفردات
أُعدّ هذا المقال بمساعدة الذكاء الاصطناعي، وخضع لمراجعة ذاتية بالأداة نفسها. لا يُنسب إلى مراجع بشري أو خبير مستقل. منهجية المحتوى.
