آموزش پایتون - ویژگی ها
پایتون یک زبان اسکریپتنویسی پر از ویژگی، سطح بالا، تفسیری، تعاملی و شیءگرا است. پایتون به دلیل ویژگیهایی مانند خوانایی، سادگی، کتابخانههای گسترده و بسیاری موارد دیگر، یک زبان برنامهنویسی همهکاره و بسیار محبوب است. در این آموزش، با ویژگیهای مختلف پایتون آشنا میشویم که آن را به یک زبان برنامهنویسی قدرتمند و انعطافپذیر تبدیل کرده است.

مهمترین ویژگیهای پایتون به شرح زیر است:
- یادگیری آسان
- تایپ پویا (Dynamically Typed)
- مبتنی بر مفسر
- تعاملی
- چندالگویی (Multi-paradigm)
- کتابخانه استاندارد
- متنباز و چندپلتفرمی
- برنامههای دارای رابط گرافیکی (GUI)
- اتصال به پایگاه داده
- قابلیت توسعه (Extensible)
- جامعه توسعهدهندگان فعال
یادگیری آسان
این یکی از مهمترین دلایل محبوبیت پایتون است. پایتون مجموعه محدودی از کلمات کلیدی دارد. ویژگیهای آن مانند سنتکس ساده، استفاده از تورفتگی برای جلوگیری از شلوغی آکولادها و تایپ پویا که نیازی به تعریف قبلی متغیر ندارد، به افراد مبتدی کمک میکند تا پایتون را بهسرعت و بهسادگی یاد بگیرند.
تایپ پویا (Dynamically Typed)
پایتون یک زبان برنامهنویسی با تایپ پویا است. در پایتون، هنگام تعریف متغیر نیازی به تعیین نوع آن ندارید. به دلیل این ویژگی تایپ پویا، نوع متغیرها در زمان اجرا و بر اساس مقداری که به آنها اختصاص داده میشود مشخص میگردد.
مبتنی بر مفسر
دستورات در هر زبان برنامهنویسی باید به کد ماشین ترجمه شوند تا پردازنده بتواند آنها را اجرا کند. زبانهای برنامهنویسی یا مبتنی بر کامپایلر هستند یا مبتنی بر مفسر.
در صورت استفاده از کامپایلر، نسخه زبان ماشین کل برنامه مبدأ تولید میشود. اگر حتی یک دستور اشتباه وجود داشته باشد، تبدیل انجام نمیشود. از این رو، فرآیند توسعه برای افراد مبتدی خستهکننده است. زبانهای خانواده C (شامل C، C++، Java، C# و غیره) مبتنی بر کامپایلر هستند.
پایتون یک زبان مبتنی بر مفسر است. مفسر دستورات کد مبدأ را یکییکی دریافت کرده، به کد ماشین ترجمه میکند و اجرا مینماید. دستورات قبل از اولین خطای رخداده اجرا میشوند. با این ویژگی، خطایابی برنامه آسانتر است و در نتیجه برای برنامهنویسان مبتدی مفید خواهد بود تا بهمرور اعتمادبهنفس پیدا کنند. بنابراین پایتون زبانی مناسب برای افراد مبتدی است.
تعاملی
توزیع استاندارد پایتون همراه با یک شل تعاملی عرضه میشود که بر اساس اصل REPL (حلقه خواندن، ارزیابی، چاپ) کار میکند. این شل یک پرامپت پایتون مشخص >>> ارائه میدهد. شما میتوانید هر عبارت معتبر پایتون را تایپ کرده و Enter را فشار دهید. مفسر پایتون بلافاصله پاسخ را برمیگرداند و پرامپت دوباره آماده خواندن عبارت بعدی میشود.
>>> 2*3+1
7
>>> print ("Hello World")
Hello World
حالت تعاملی بهویژه برای آشنایی با یک کتابخانه و تست عملکرد آن بسیار مفید است. قبل از نوشتن یک برنامه، میتوانید قطعهکدهای کوچک را در حالت تعاملی امتحان کنید.
چندالگویی (Multi-paradigm)
پایتون کاملاً یک زبان شیءگرا است. همه چیز در یک برنامه پایتون یک شیء است. با این حال، پایتون شیءگرایی خود را بهراحتی بستهبندی میکند تا بتوان از آن به عنوان یک زبان امری یا رویکردی مانند C استفاده کرد. پایتون همچنین قابلیتهای خاصی ارائه میدهد که شبیه به برنامهنویسی تابعی است. علاوه بر این، ابزارهای شخص ثالث خاصی توسعه یافتهاند تا از سایر الگوهای برنامهنویسی مانند برنامهنویسی جنبهگرا و منطقی پشتیبانی کنند.
کتابخانه استاندارد
اگرچه پایتون کلمات کلیدی بسیار کمی دارد (فقط ۳۵ کلمه)، اما نرمافزار پایتون همراه با یک کتابخانه استاندارد متشکل از تعداد زیادی ماژول و پکیج توزیع میشود. بنابراین پایتون پشتیبانی آمادهای برای نیازهای برنامهنویسی مانند سریالیسازی، فشردهسازی دادهها، مدیریت دادههای اینترنتی و موارد دیگر دارد. پایتون به رویکرد "همراه با باتری" (کامل و آماده استفاده) معروف است.
برخی از ماژولهای محبوب پایتون عبارتند از:
- NumPy
- Pandas
- Matplotlib
- Tkinter
- Math
متنباز و چندپلتفرمی
توزیع استاندارد پایتون را میتوان بدون هیچ محدودیتی از آدرس https://www.python.org/downloads/ دانلود کرد. شما میتوانید فایلهای باینری پیشکامپایلشده را برای پلتفرمهای مختلف سیستمعامل دانلود کنید. علاوه بر این، کد مبدأ نیز بهصورت رایگان در دسترس است، به همین دلیل در دسته متنباز قرار میگیرد.
نرمافزار پایتون (به همراه مستندات) تحت مجوز بنیاد نرمافزار پایتون توزیع میشود. این یک مجوز نرمافزاری آسانگیر به سبک BSD و سازگار با GNU GPL (مجوز عمومی همگانی) است.
پایتون یک زبان چندپلتفرمی است. باینریهای پیشکامپایلشده برای استفاده در پلتفرمهای مختلف سیستمعامل مانند Windows، Linux، Mac OS و Android OS در دسترس هستند. پیادهسازی مرجع پایتون CPython نام دارد و به زبان C نوشته شده است. شما میتوانید کد مبدأ را دانلود کرده و آن را برای پلتفرم سیستمعامل خود کامپایل کنید.
یک برنامه پایتون ابتدا به یک بایتکد واسط مستقل از پلتفرم کامپایل میشود. سپس ماشین مجازی درون مفسر، بایتکد را اجرا میکند. این رفتار باعث میشود پایتون یک زبان چندپلتفرمی باشد و در نتیجه یک برنامه پایتون به راحتی از یک سیستمعامل به سیستمعامل دیگر منتقل شود.
برنامههای دارای رابط گرافیکی (GUI)
توزیع استاندارد پایتون دارای یک کتابخانه گرافیکی عالی به نام Tkinter است. این یک نسخه پایتون برای ابزار گرافیکی بسیار محبوب TCL/Tk است. شما میتوانید برنامههای گرافیکی جذاب و کاربرپسندی را در پایتون بسازید. ابزارهای گرافیکی عموماً به زبان C/C++ نوشته میشوند. بسیاری از آنها به پایتون منتقل شدهاند؛ مانند PyQt، WxWidgets، PySimpleGUI و غیره.
اتصال به پایگاه داده
تقریباً از هر نوع پایگاه دادهای میتوان به عنوان بخش بکاند در برنامههای پایتون استفاده کرد. DB-API مجموعهای از مشخصات برای نرمافزارهای درایور پایگاه داده است تا به پایتون امکان ارتباط با پایگاه داده رابطهای را بدهد. پایتون با وجود کتابخانههای شخص ثالث متعدد، میتواند با پایگاههای داده NoSQL مانند MongoDB نیز کار کند.
قابلیت توسعه (Extensible)
مفهوم قابلیت توسعه به معنای توانایی افزودن ویژگیهای جدید یا تغییر ویژگیهای موجود است. همانطور که قبلاً ذکر شد، CPython (که پیادهسازی مرجع پایتون است) به زبان C نوشته شده است. از این رو، بهراحتی میتوان ماژولها/کتابخانههایی به زبان C نوشت و آنها را در کتابخانه استاندارد ادغام کرد. پیادهسازیهای دیگری نیز از پایتون وجود دارد مانند Jython (نوشتهشده به زبان Java) و IPython (نوشتهشده به زبان C#). بنابراین، امکان نوشتن و ادغام قابلیتهای جدید در این پیادهسازیها به ترتیب با Java و C# وجود دارد.
جامعه توسعهدهندگان فعال
در نتیجه محبوبیت پایتون و طبیعت متنباز آن، تعداد زیادی از توسعهدهندگان پایتون اغلب در انجمنهای آنلاین و کنفرانسها با یکدیگر تعامل دارند. بنیاد نرمافزار پایتون نیز دارای اعضای قابل توجهی است که در مأموریت سازمان یعنی "ارتقا، حفاظت و پیشبرد زبان برنامهنویسی پایتون" مشارکت دارند.
پایتون همچنین از پشتیبانی سازمانی قابل توجهی برخوردار است. شرکتهای بزرگ فناوری اطلاعات مانند Google، Microsoft و Meta با تهیه مستندات و سایر منابع، کمک شایانی به آن میکنند.
علاوه بر ویژگیهای ذکرشده در بالا، پایتون فهرست بزرگ دیگری از ویژگیهای خوب دارد که چند مورد از آنها در زیر آمده است −
-
از روشهای برنامهنویسی تابعی و ساختاریافته و همچنین برنامهنویسی شیءگرا پشتیبانی میکند.
-
میتواند به عنوان یک زبان اسکریپتنویسی استفاده شود یا برای ساخت برنامههای بزرگ به بایتکد کامپایل شود.
-
انواع دادههای پویا و بسیار سطح بالا را ارائه میدهد و از بررسی پویا نوع داده پشتیبانی میکند.
-
از جمعآوری خودکار زباله (Garbage Collection) پشتیبانی میکند.
-
به راحتی میتواند با C، C++، COM، ActiveX، CORBA و Java ادغام شود.
پیشرفت مطالعه: وضعیت خواندهشدن این درس فقط در همین مرورگر ذخیره میشود؛ بدون نیاز به حساب کاربری.