منابع ترجمه · The Python Tutorial · فصل ۱
اشتهایتان را باز کنید (آموزش رسمی پایتون، فصل ۱)
منبع اصلی: The Python Tutorial, Chapter 1: Whetting Your Appetite — Python Software Foundation
💡 این صفحه مثل یک نوتبوک Jupyter است: متغیر و تابعی که در یک سلول تعریف شود، در سلولهای بعدی همین صفحه در دسترس است. سلولها را به ترتیب اجرا کنید، یا با «⏮ تا اینجا» همهٔ سلولهای قبلیِ اجرانشده را یکجا اجرا کنید.
اگر زیاد با رایانه کار کنید، دیر یا زود به کاری برمیخورید که دوست دارید خودکارش کنید. برای مثال، شاید بخواهید روی تعداد زیادی فایل متنی جستوجو و جایگزینی انجام دهید، یا مجموعهای از فایلهای عکس را به شکلی پیچیده تغییر نام دهید و مرتب کنید. شاید هم بخواهید یک پایگاه دادهٔ کوچک سفارشی، یک برنامهٔ گرافیکی (GUI) تخصصی، یا یک بازی ساده بنویسید.
اگر توسعهدهندهٔ حرفهای نرمافزار هستید، ممکن است مجبور باشید با چندین کتابخانهٔ C/C++/Java کار کنید و ببینید چرخهٔ معمول نوشتن/کامپایل/آزمایش/کامپایل مجدد بیش از حد کند است. شاید در حال نوشتن مجموعهآزمونی برای چنین کتابخانهای هستید و نوشتن کد آزمون را کاری خستهکننده مییابید. یا شاید برنامهای نوشتهاید که میتوانست از یک زبان افزونه (extension language) استفاده کند و نمیخواهید برای برنامهتان یک زبان کاملاً جدید طراحی و پیادهسازی کنید.
پایتون دقیقاً همان زبانی است که به آن نیاز دارید.
میتوانید برای بعضی از این کارها اسکریپت شل یونیکس یا فایلهای دستهای (batch) ویندوز بنویسید، اما اسکریپتهای شل برای جابهجا کردن فایلها و تغییر دادهٔ متنی بهترین هستند و برای برنامههای گرافیکی یا بازیها مناسب نیستند. میتوانید یک برنامهٔ C/C++/Java بنویسید، اما حتی رسیدن به یک پیشنویس اولیهٔ برنامه ممکن است زمان توسعهٔ زیادی ببرد. استفاده از پایتون سادهتر است، روی سیستمعاملهای ویندوز، macOS و یونیکس در دسترس است و به شما کمک میکند کار را سریعتر تمام کنید.
پایتون ساده است، اما یک زبان برنامهنویسی واقعی است و ساختار و پشتیبانی بسیار بیشتری برای برنامههای بزرگ نسبت به اسکریپتهای شل یا فایلهای دستهای ارائه میدهد. از سوی دیگر، پایتون بررسی خطای بسیار بیشتری نسبت به C ارائه میدهد و چون یک زبان بسیار سطحبالا است، انواع دادهٔ سطحبالا مانند آرایههای انعطافپذیر و دیکشنریها را بهصورت درونساخت دارد. بهدلیل انواع دادهٔ عمومیتر، پایتون برای حوزهٔ مسائل بسیار گستردهتری از Awk و حتی Perl کاربرد دارد، با این حال بسیاری از کارها در پایتون دستکم به همان سادگی آن زبانهاست.
پایتون به شما اجازه میدهد برنامهتان را به ماژولهایی تقسیم کنید که در برنامههای پایتون دیگر قابل استفاده مجدد هستند. پایتون با مجموعهای بزرگ از ماژولهای استاندارد همراه است که میتوانید آنها را مبنای برنامههایتان قرار دهید — یا بهعنوان نمونه برای شروع یادگیری برنامهنویسی با پایتون به کار ببرید. برخی از این ماژولها چیزهایی مانند ورودی/خروجی فایل، فراخوانیهای سیستمی، سوکتها و حتی رابطهایی به جعبهابزارهای رابط کاربری گرافیکی مانند Tk را فراهم میکنند.
پایتون یک زبان مفسَّر (interpreted) است که میتواند در طول توسعهٔ برنامه زمان قابلتوجهی برایتان صرفهجویی کند، چون به کامپایل و پیوند (linking) نیازی نیست. میتوان از مفسر بهصورت تعاملی استفاده کرد، که آزمایش ویژگیهای زبان، نوشتن برنامههای یکبارمصرف، یا آزمودن توابع در طول توسعهٔ پایینبهبالا را آسان میکند. همچنین ماشینحسابی رومیزی و کارآمد است.
پایتون امکان نوشتن برنامهها را به شکلی فشرده و خوانا فراهم میکند. برنامههای نوشتهشده با پایتون معمولاً به چند دلیل بسیار کوتاهتر از برنامههای معادل در C، ++C یا Java هستند:
- انواع دادهٔ سطحبالا به شما اجازه میدهند عملیات پیچیده را در یک دستور بیان کنید؛
- گروهبندی دستورها با تورفتگی (indentation) انجام میشود، نه با کروشههای آغاز و پایان؛
- هیچ اعلان متغیر یا آرگومانی لازم نیست.
پایتون توسعهپذیر (extensible) است: اگر بلد باشید با C برنامهنویسی کنید، افزودن یک تابع یا ماژول درونساخت جدید به مفسر آسان است، چه برای اجرای عملیات حیاتی با حداکثر سرعت، چه برای پیوند دادن برنامههای پایتون به کتابخانههایی که شاید فقط بهصورت باینری در دسترس باشند (مانند یک کتابخانهٔ گرافیکی مخصوص یک فروشنده). وقتی واقعاً به پایتون علاقهمند شدید، میتوانید مفسر پایتون را به برنامهای که با C نوشته شده پیوند دهید و از آن بهعنوان زبان افزونه یا زبان فرمان برای آن برنامه استفاده کنید.
اتفاقاً نام این زبان از برنامهٔ تلویزیونی «سیرک پرندهٔ مانتی پایتون» (Monty Python’s Flying Circus) بیبیسی گرفته شده و ربطی به خزندگان ندارد. ارجاع دادن به اسکیتهای مانتی پایتون در مستندات نهتنها مجاز است، بلکه تشویق هم میشود!
حالا که از پایتون هیجانزده شدهاید، میخواهید آن را با جزئیات بیشتری بررسی کنید. از آنجا که بهترین راه یادگیری یک زبان استفاده از آن است، این آموزش شما را دعوت میکند هنگام خواندن با مفسر پایتون ور بروید.
در فصل بعد، شیوهٔ کار با مفسر توضیح داده میشود. این اطلاعات تا حدی دمدستی است، اما برای امتحان کردن مثالهایی که بعداً میآیند ضروری است.
بقیهٔ آموزش، ویژگیهای گوناگون زبان و سامانهٔ پایتون را از طریق مثال معرفی میکند؛ با عبارتها، دستورها و انواع دادهٔ ساده شروع میکند، به توابع و ماژولها میرسد و در پایان به مفاهیم پیشرفتهای مانند استثناها و کلاسهای تعریفشده توسط کاربر اشاره میکند.