نظام بايثون للمساعدة

إذا تم إعطائك مكتبة أو حزمة بايثون جديدة ولا تعرف كبف تعمل هذه الأخيرة كيف تتعامل مع هذه المشكلة ؟

ربما ستكون إجابتك : سأبحث عنها في قوقل لأرى أي توثيق خاص بها .

ولكن ماذا ستكون إجابتك إذا قلت لك أنه لا يوجد إتصال بالأنترنيت .

ستقول لي سأقرا الكود جيدا ليمكنني رؤية ماذا يمكنني التعلم منه ولكن ليس هذا مانبحث عنه .

نظام المساعدة لبايثون عبر الأنترنيت

يحتوي بايثون على نظام مساعدة مدمج مرتكز على وحدة pydoc قم بفتح الطرفية وأكتب الأمر التالي :


pydoc os

وستظهر شاشة المساعدة على الشاشة


NAME
os - OS routines for NT or Posix depending on what system we're on.

FILE
/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/os.py

MODULE DOCS
http://docs.python.org/library/os

DESCRIPTION
This exports:
- all functions from posix, nt, os2, or ce, e.g. unlink, stat, etc.
- os.path is one of the modules posixpath, or ntpath
...

الشيء الجميل هو أنك تستطيع تصفح دليل المساعدة عبر المتصفح أيضا وليس فقط على الطرفية ويمكنك تشغيل السيرفر المحلي الذي سيقوم بخدمة دليل المساعدة عبر صفحات HTML عبر الأمر التالي :

pydoc -p 8000
 
الأن قم بفتح المتصفح و توجه إلى العنوان التالي :

http://localhost:8000 وستجد الصفحة الرئيسية مع مجموعة الروابط لصفحات المساعدة لجميع المكتبات والحزم المثبة على جهازك

pydoc

الحصول على المساعدة في IDLE

يمكنك الوصول إلى نفس المساعدة على IDLE  بإستخدام الوظيفة المدمجة help

>>> import os
>>> help(os)
...

أحيانا لا ترغب في عرض النص الكامل للمساعدة ولكن تريد التعرف على مميزات كائن ما فقط حتى تستطيع إستخدامها في الكود وهنا يأتي دور الأمر dir .
يعمل هذا الأمر في موضعين ، الأول عندما يتم تنفيذه بدون أي مدخلات وفي هذه الحالة سيقوم بعرض قائمة الأسماء المعرفة في النطاق المحلي

>>> dir()
['__builtins__', '__doc__', '__name__', '__package__']
>>> nums = range(10)
>>> dir()
['__builtins__', '__doc__', '__name__', '__package__', 'nums']

أما الوضع الثاني عندما نقوم بتعيين مدخلات عبارة عن كائنات حيث ستحاول عرض قائمة بالمميزات الذات الصلة لذلك الكائن وهذا يعتمد أيضا حول إذا ما كان الكائن وحدة أو كلاس .
فإذا كان الكائن عبارة عن وحدة فإن dir ستقوم بعرض قائمة بمميزات هذه الوحدة وأما إذا كان عبارة عن كلاس فستقوم بعرض قائمة بمميزات الكلاس .

>>> import os
>>> dir(os)
['EX_CANTCREAT', 'EX_CONFIG', ... , 'write']
>>> class MyObject(object):
        def __dir__(self):
            return ["foo", "bar", "baz"]
 
>>> m = MyObject()
>>> dir(m)
['bar', 'baz', 'foo']
أرجوا أن تقوم بدعمنا عبر نشرك والاعجاب بالموقع

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

Post Navigation