آشنایی با فانکشن ()help در زبان برنامه‌نویسی پایتون


زمانی که در حال یادگیری یک زبان جدید مثل زبان انگلیسی هستید، قاعدتاً از همان ابتدا با تمام لغات و گرامر آن زبان آشنا نیستید و به مرور زمان با استفاده از منابع آموزشی مختلف مثل کتاب‌ها، کلاس‌های آموزشی، اساتید، سایت‌های آموزشی، گفت‌وگو و تبادل اطلاعات با سایر زبان‌آموزان و بسیاری موارد دیگر به آن زبان تسلط پیدا می‌کنید. البته حتی پس از تسلط به یک زبان هم گاهی ممکن است که مثلاً با لغتی روبه‌رو شوید که معنای آن را ندانید و برای راهنمایی گرفتن مجدداً به منابع و اسنادی مانند یک دیکشنری مراجعه کنید (در همین راستا و برای کسب اطلاعات بیشتر،‌ می‌توانید به مقالهٔ‌ روش‌های یادگیری و آموزش زبان انگلیسی مراجعه نمایید.)

این قضایا در مورد یادگیری یک زبان برنامه‌نویسی جدید هم صادق است و باید بدانید که حتی برنامه‌نویسان حرفه‌ای هم که سال‌ها روی یک زبان برنامه‌نویسی کد زده‌اند نیز گاهی سینتکس برخی دستورات را فراموش می‌کنند یا حتی در برخی مواقع با مواردی روبه‌رو می‌شوند که قبلاً به آن‌ها برخورد نکرده‌اند. آنچه در این بین حائز اهمیت است اینکه بدانید در این موارد چه‌طور از امکانات موجود خودِ زبان به عنوان یک راهنما بهره بگیرید که در همین راستا در این آموزش قصد داریم به بررسی برخی از این امکانات راهنما و نحوهٔ استفاده از آن‌ها در زبان برنامه‌نویسی پایتون بپردازیم.

خوشبختانه زبان پایتون با برخورداری از یک سیستم راهنمای جامع و کامل، بخش زیادی از نیاز برنامه‌نویسان را برای راهنمایی گرفتن در مورد مفاهیم این زبان برنامه‌نویسی رفع کرده است که برای این منظور می‌توان از فانکشن از پیش ساخته شدهٔ ()help استفاده کرد (این فانکشن بیشتر در زمان کار با حالت تعاملی محیط برنامه‌نویسی پایتون استفاده می‌شود.) در تصویر زیر می‌بینید که چگونه با فراخوانی فانکشن ()help در حالت تعاملی پایتون، وارد بخش راهنما می‌شویم:

همان‌طور که در تصویر بالا مشخص است، با ورود به این حالت کامند پرامپت یا همان علامت <<< تبدیل به <help می‌شود و تا زمانی که هلپ پرامپت را در پنجره می‌بینید، هرگز نمی‌توانید دستوری را اجرا کنید و برای خروج از این حالت و بازگشت به حالت تعامل با مفسر پایتون کافی است دستور quit را وارد کرده و اینتر کنید یا بدون تایپ کردن چیزی در جلوی هلپ پرامپت یک بار کلید اینتر را فشار دهید که در این صورت سیستم هلپ با نمایش یک پیغام راهنما مبنی بر خروج از سیستم هلپ و نحوهٔ استفاده از فانکشن ()help در زمان غیرفعال بودن این سیستم بسته می‌شود و مجدداً کامند پرامپت ظاهر می‌شود و می‌توان شروع به وارد کردن دستورات مد نظر خود کرد:

حال در ادامه قصد داریم ببینیم که برای استفاده از راهنمای این زبان چگونه باید سؤال خود را مطرح کنیم. بعد از ورود به وضعیت هلپ، در همان ابتدا نکات مفیدی در مورد نوع سؤالاتی که می‌توان در این بخش مطرح کرد آمده است که بر اساس این نکات، برای جستجو در سیستم چهار عنوان اصلی وجود دارد:

- modules (ماژول‌ها)
- keywords (کلمات کلیدی)
- symbols (نمادها یا نشانه‌های خاصی که مفهوم ویژه‌ای برای مفسر پایتون دارند)
- topics (مباحث مختلف)

برای راهنمایی گرفتن در مورد هر یک از موضوعات، کافی است عنوان آن را در جلوی هلپ پرامپت وارد کنید. برای مثال، با تایپ کردن عنوان modules سیستم هلپ لیستی از ماژول‌های در دسترس را ارائه می‌کند یا با وارد کردن عبارت keywords لیست تمام کیوردهای پایتون نمایش داده می‌شود:

همان‌طور که می‌بینید، سیستم هلپ پایتون دولوپرهای این زبان را راهنمایی می‌کند تا در صورتی که بخواهند در مورد هر یک از عناوین فهرست‌شده راهنمایی بگیرند کافی است تنها آن عنوان را وارد کنند و کلید اینتر را بزنند تا توضیحات مبحث مورد نظر نمایش داده شود. برای مثال، ما لیستی از تمام نمادها را با درج کیورد symbols می‌گیریم و در میان آن‌ها نماد =! را می‌بینیم که در مورد آن چیزی نمی‌دانیم اما با تایپ کردن نماد =! و فشردن کلید اینتر، در مورد این نماد اطلاعات بیشتری کسب خواهیم کرد:

دقت کنید که در این حالت نیز پایتون نسبت به بزرگ و کوچک بودن حروف حساس است و برای وارد کردن عناوین باید آن‌ها را به شکل درست تایپ کنید. برای مثال، در میان موضوعات عنوان FUNCTIONS وجود دارد که در مورد توابع توضیح می‌دهد. اگر این عنوان را بدون رعایت این نکته وارد کنیم، سیستم اعلام می‌کند که هیچ سندی در مورد این عنوان وجود ندارد:

اما همان‌طور که می‌بینید، زمانی که عنوان FUNCTIONS را به صورت درست و با حروف بزرگ وارد می‌کنیم، توضیحات سند راهنمای مربوط به آن نمایش داده می‌شود.

به جز جستجو در عنوان‌های از قبل مشخص‌شده، گاهی پیش می‌آید که شما با بعضی از دستورات پایتون رو‌به‌رو می‌شوید که نمی‌دانید چه کارکردی دارند یا می‌خواهید اطلاعات بیشتری در مورد آن‌ها پیدا کنید که در چنین شرایطی می‌توانید آن دستور را به صورت ساده در جلوی هلپ پرامپت وارد کنید و کلید اینتر را فشار دهید تا توضیحات مرتبط با آن را ببینید. برای مثال، ما قبلاً با دستور ()print کار کرده‌ایم و اکنون می‌خواهیم در مورد آن راهنمایی بگیریم. برای این کار، عبارت print را بدون قرار دادن پرانتزها در جلوی آن وارد می‌کنیم:

البته شاید این اسناد کمک زیادی به افراد مبتدی نکند، با این حال باز هم می‌توانیم اطلاعات بیشتری به دست آوریم و لایه‌لایه آن‌ها را روی هم قرار دهیم تا به طور کامل به سینتکس پایتون مسلط شویم. در واقع، یادگیری یک زبان مثل چیدن قطعات یک پازل در کنار هم است که هر چه قطعه‌های بیشتری از اطلاعات را به درستی در کنار هم در ذهن داشته باشیم، تصویر و درک کامل‌تری از آن زبان خواهیم داشت. برای مثال، در توضیحات مربوط به print عبارت sys.stdout را می‌بینیم که در مورد آن چیزی نمی‌دانیم. می‌توانیم با وارد کردن این عنوان در سیستم هلپ اطلاعات بیشتری در مورد آن به دست بیاوریم:

استفاده از اسناد راهنمای پایتون به این صورت که وارد سیستم هلپ آن شوید برای مواقعی کاربرد دارد که شما دقیقاً نمی‌دانید به دنبال چه چیزی هستید و نیاز به اطلاعات متعددی دارید و زمانی که در حال کدنویسی هستید و ناگهان در مورد چیزی نیاز به راهنمایی پیدا می‌کنید، می‌توانید باز هم از هلپ استفاده کنید بدون اینکه نیاز باشد سیستم هلپ پایتون را فعال کنید که برای این کار کافی است در زمان فراخوانی فانکشن ()help در میان پرانتزهای آن یک آرگومان قرار دهید.

اگر آرگومان فانکشن هلپ یک استرینگ باشد، در این صورت سیستم به دنبال این استرینگ به عنوان نام یک ماژول، فانکشن، کلاس، متد، کیورد و یا موضوعی مستند می‌گردد و صفحهٔ راهنما را نمایش می‌دهد. برای مثال، اگر بخواهیم در مورد نوع داده‌های عدد صحیح اطلاعاتی را به دست آوریم، دستور ('help('int را وارد می‌کنیم. به عنوان مثالی دیگر، در تصویر زیر می‌بینید که چه‌طور فانکشن ()help را با آرگومان ورودی keywords فراخوانی کرده‌ایم تا در مورد موضوع کیوردها راهنمایی بگیریم:

همان‌طور که گفتیم و در تصویر بالا مشخص است، بعد از تمام شدن توضیحات، دیگر هلپ پرامپت ظاهر نمی‌شود و می‌توانید در جلوی کامند پرامپت شروع به نوشتن کدها نمایید.

اگر آرگومان فانکشن ()help هر نوع آبجکت یا شیئی به جز استرینگ باشد، سیستم به دنبال صفحهٔ راهنما در مورد آن آبجکت می‌گردد. برای مثال، می‌دانیم که عدد صحیح 2 یک آبجکت از کلاس int است و اگر استرینگ "2" را به عنوان آرگومان به فانکشن ()help بدهیم، خواهیم دید که هیچ سند راهنمای خاصی در مورد این آبجکت خاص وجود ندارد اما اگر خود عدد صحیح یا هر آبجکت دیگری را به عنوان آرگومان به این فانکشن بدهیم، سیستم به دنبال توضیحات مربوط به کلاس آن آبجکت می‌گردد و آن را در کنسول نمایش می‌دهد:

البته علاوه بر فانکشن ()help می‌توانید از امکانات دیگر پکیج پایتون استفاده کنید. برای مثال، اسناد پایتون که به همراه این پکیج دانلود می‌شوند حاوی توضیحات مفصلی در مورد موضوعات مختلف این زبان است که برای دسترسی به این اسناد از طریق پنجرهٔ شِل آیدل می‌توانید از منوی Help گزینهٔ Python Docs را انتخاب کنید یا کلید F1 را فشار دهید تا پنجرهٔ اسناد پایتون باز شود:

همان‌طور که می‌بینید، در منوی هلپ گزینه‌های دیگری نیز نظیر Help IDLE وجود دارد که با انتخاب آن پنجره‌ای باز خواهد شد که نکات راهنمای مفیدی در مورد کار با ویرایشگر آیدل ارائه می‌دهد.

پیش از این گفتیم که در پنجرهٔ اسناد پایتون توضیحات جامعی درباره تمام اجزای این زبان برنامه‌نویسی ارائه شده است به علاوه اینکه از طریق گزینهٔ Search در سایدبار سمت چپ نیز می‌توانید سند راهنمای مربوط به موضوع مورد علاقهٔ خود را جستجو کنید:

همان‌طور که ملاحظه می‌شود، موضوعات مختلف در قالب دسته‌بندی‌های مختلفی در معرض دید دولوپر قرار گرفته‌اند.

لیست نظرات
کاربر میهمان
دیدگاه شما چیست؟
کاربر میهمان
کاربر میهمان
فردیمن یک کاربر مهمان هستم
۱۳۹۵/۰۷/۲۳
با سلام و تشکر از تدریس بسیار عالی شما که همراه با پوشش بسیاری از نکات هست. از این قسمت سوالی داشتم درباره اینکه 4 عنوان اصلی برای هلپ وجود دارد میخواستم بدونم functions ویا methods و یا از این دست جزو این 4 عنوان نیست؟ چطور بفهمیم چیزهای دیگری هم مانند این کلمات وجود دارد مثلا پروسیجر... که از آنها هم هلپ بگیریم.