در این پست - که بیش از آنکه شبیه به مقاله باشد، یک پژوهش جامع در مورد پایتون محسوب می شود - به بحث در خصوص سوال "پایتون چیست" پرداخته و همچنین ویژگی های این زبان برنامه نویسی جذاب و پرطرفدار را بررسی میکنیم. همچنین روش نصب و نوشتن اولین برنامه با آن را بررسی خواهیم کرد. در هنگام خواندن آن، چای یا قهوه فراموشتان نشود!
فهرست عناوین این مقاله عبارتند از:
اگر به سایت رسمی پایتون مراجعه کنید، با تصویر زیر رو به رو می شوید:
ترجمه متن سفید رنگ تصویر در تصویر بالا به فارسی این است:
«پایتون یک زبان برنامه نویسی است که به شما امکان می دهد سریع کار کنید و سیستم ها را به طور موثرتر یکپارچه کنید.»
پس تا این جا فهمیدیم که پایتون یک زبان برنامه نویسی است که برای توسعه سیستم های یکپارچه نرم افزاری به کار می رود. ولی این آشنایی کافی نیست. پس بیایید به طور دقیق تر با پایتون آشنا شویم.
پایتون یک زبان برنامه نویسی سطح بالا، تفسیر شده و همه منظوره است. مبنا و فلسفه طراحی آن بر پایه خوانایی کد با استفاده از تورفتگی است.
پایتون به صورت پویا نوشته می شود و بر پایه بازیافت زباله است. بازیافت زباله نوعی مدیریت حافظه در پایتون است و در این نشانی بهتر می توانید با آن آشنا شوید. پایتون از الگوهای مختلف برنامه نویسی مانند برنامه نویسی ساخت یافته (به ویژه رویه ای)، شی گرا و تابعی پشتیبانی می کند. به دلیل دارا بودن کتابخانه استاندارد جامع، اغلب به عنوان یک زبان «باتری دار» توصیف می شود.
شاید نیاز باشد به منظور ارائه پاسخی جامع به سوال "پایتون چیست" به بررسی تاریچه پایتون نیز بپردازیم.
پایتون در اواخر دهه 1980 توسط «خیدو فان روسوم» در Centrum Wiskunde و Informatica (CWI) در هلند به عنوان جانشین زبان برنامه نویسی ABC، که از SETL الهام گرفته شده بود و قادر به مدیریت استثنا بود، ابداع شد.
او کار بر روی Python را در اواخر دهه 1980 به عنوان جانشین زبان برنامه نویسی ABC آغاز کرد و اولین بار در سال 1991 آن را با نام Python 0.9.0 منتشر کرد. Python 2.0 در سال 2000 منتشر شد و ویژگی های جدیدی مانند درک لیست، جمع آوری زباله های شناسایی چرخه، شمارش مراجع و پشتیبانی از یونیکد را معرفی کرد. پایتون 3.0 که در سال 2008 منتشر شد، یک ویرایش بزرگ بود که کاملا با نسخههای قبلی سازگار نیست. پایتون 2 با نسخه 2.7.18 در سال 2020 متوقف شد. پایتون همواره به عنوان یکی از محبوب ترین زبان های برنامه نویسی رتبه بندی می شود.
ون روسوم مسئولیت پروژه را به عنوان توسعه دهنده اصلی تا ۱۲ ژوئیه ۲۰۱۸ بر عهده داشت. پایان عمر پایتون 2.7 ابتدا برای سال 2015 تنظیم شده بود، سپس به دلیل نگرانی از اینکه بخش بزرگی از کدهای موجود را نمی توان به راحتی به پایتون 3 منتقل کرد، به سال 2020 موکول شد. با پایان عمر پایتون 2، فقط پایتون 3.6.x و نسخه های بعدی پشتیبانی می شد. بعدا پشتیبانی از 3.6 نیز متوقف شد.
در سال 2022، Python 3.10.4 و 3.9.12 و به همین ترتیب نسخه های قدیمی تر از جمله 3.8.13، و 3.7.13 به دلیل بسیاری از مسائل امنیتی، تسریع شدند. Python 3.9.13 آخرین نسخه 3.9 است و از این پس نسخه 3.9 (و قدیمی تر؛ 3.8 و 3.7) فقط به روز رسانی های امنیتی را دریافت می کنند.
فلسفه اصلی آن در سند پایتون (PEP 20) خلاصه شده است که شامل عباراتی مانند زیر است:
پایتون برای رسیدن به یک نحو و دستور زبان سادهتر و کمتر تلاش میکند و در عین حال به توسعهدهندگان امکان انتخاب در روش کدنویسی خود را می دهد. برخلاف شعار Perl یعنی «بیش از یک راه برای انجام آن وجود دارد«، پایتون از فلسفه «باید یک و ترجیحا تنها یک راه واضح برای انجام آن وجود داشته باشد» را دارا می باشد.
«الکس مارتلی»، یکی از اعضای بنیاد نرمافزار پایتون و نویسنده کتاب پایتون، مینویسد: «توصیف چیزی بهعنوان هوشمندانه در فرهنگ پایتون یک تعریف محسوب نمیشود.»
توسعهدهندگان پایتون تلاش میکنند از بهینهسازی زودرس اجتناب کنند و وصلههای مربوط به بخش های غیر بحرانی پیادهسازی مرجع CPython را رد کنند که به قیمت شفافیت، سرعت را افزایش میدهد. وقتی سرعت مهم است، یک برنامه نویس پایتون می تواند توابع حیاتی را به ماژول های افزونه نوشته شده به زبان هایی مانند C منتقل کند یا از PyPy، که یک کامپایلر in-time است، استفاده کند. Cython نیز موجود است که یک اسکریپت پایتون را به C ترجمه میکند و تماسهای مستقیم API سطح C را در مفسر پایتون ایجاد میکند.
نام این زبان برنامهنویسی یعنی «پایتون» از سریال کمدی بیبیسی، Monty Python's Flying Circus گرفته شده است. روسوم فکر کرد به نامی نیاز دارد که کوتاه، منحصر به فرد و کمی مرموز باشد، پس تصمیم گرفت نام زبان برنامه نویسی را Python بگذارد.
یک نئولوژیسم (نو واژه) رایج در جامعه پایتون، پایتونیک است که دارای طیف گسترده ای از معانی مرتبط با استایل برنامه است. کد «پایتونیک» به معنای این است که زبان برنامه باید روان باشد یا با فلسفه پایتون و خوانایی برنامه مطابقت داشته باشد. کدی که درک آن دشوار است یا مانند یک رونویسی از یک زبان برنامه نویسی دیگر است، «آنپایتونیک» نامیده می شود.
کاربران و طرفداران پایتون، به ویژه آنهایی که با تجربه هستند، اغلب به عنوان «پایتونیک کار» شناخته می شوند.
در کنار مطالبی که مطرح شدند، به منظور تکمیل کردن پاسخی جامع به پرسش "پایتون چیست" نیاز است گذری به ویژگی های طراحی این زبان برنامه نویسی پرطرفدار داشته باشیم. پایتون یک زبان برنامه نویسی چند پارادایمی است. در آن، برنامه نویسی شی گرا و برنامه نویسی ساخت یافته به طور کامل پشتیبانی می شوند و بسیاری از ویژگی های آن از برنامه نویسی تابعی و برنامه نویسی جنبه گرا (از جمله فرابرنامه نویسی و متا اشیا) پشتیبانی می کنند. همچنین بسیاری از پارادایم های دیگر از طریق برنامه های افزودنی پشتیبانی می شوند؛ از جمله طراحی با قرارداد و برنامه نویسی منطقی.
پایتون از تایپ پویا و ترکیبی از شمارش مراجع و جمعآوری زباله شناسایی چرخه برای مدیریت حافظه استفاده می کند. پایتون از تفکیک نام پویا (پیوند دیرهنگام) استفاده می کند که نام متدها و متغیرها را در طول اجرای برنامه متصل کند.
طراحی آن تا حدی از برنامه نویسی کاربردی در Lisp پشتیبانی می کند. دارای توابع فیلتر و map، لیست ها، دیکشنری، مجموعه، و عبارات مولد نیز است. کتابخانه استاندارد دارای دو ماژول (itertools و functools) است که ابزارهای کاربردی وام گرفته شده از Haskell و Standard ML را پیاده سازی می کند.
حال که هر آنچه در خصوص "پایتون چیست" میتوان مطرح کرد را بیان کردیم، به این می پردازیم که چرا بهتر است پایتون یاد بگیرید.
خوب است بدانید:
پایتون برای خوانایی بیشتر طراحی شده است و شباهت های زیادی به زبان انگلیسی که متاثر از ریاضیات باشد، دارد.
پایتون از خطوط جدید برای تکمیل یک دستور استفاده می کند، برخلاف سایر زبان های برنامه نویسی که اغلب از نقطه ویرگول یا پرانتز استفاده می کنند.
پایتون برای تعریف بلوک با تورفتگی، با استفاده از فضای سفید، معروف است. مانند بلوک حلقه ها، توابع و کلاس ها. سایر زبان های برنامه نویسی اغلب از آکولاد ها برای این منظور استفاده می کنند.
واضح است که پایتون یک زبان برنامه نویسی محبوب برای یادگیری است. اما برنامه نویسی پایتون برای چه استفاده می شود؟ در زیر کاربردهای پایتون را بررسی خواهیم کرد.
از آنجایی که پایتون یک زبان برنامه نویسی پایدار، انعطاف پذیر و ساده است، برای پروژه های مختلف یادگیری ماشینی (ML) و هوش مصنوعی (AI) عالی است. در واقع، پایتون یکی از زبانهای مورد علاقه در میان دانشمندان داده است و بسیاری از کتابخانهها و بستههای یادگیری ماشین و هوش مصنوعی پایتون در دسترس هستند.
تجزیه و تحلیل داده ها یکی دیگر از زمینه های به سرعت در حال توسعه است که از برنامه نویسی پایتون استفاده می کند. در زمانی که ما بیش از هر زمان دیگری داده ایجاد می کنیم، نیاز به افرادی وجود دارد که بتوانند اطلاعات را جمع آوری، دستکاری و سازماندهی کنند.
پایتون برای علم داده و تجزیه و تحلیل منطقی کاربردی است. این زبان برای یادگیری آسان، انعطاف پذیر است و به خوبی پشتیبانی می شود، به این معنی که استفاده از آن برای تجزیه و تحلیل داده ها نسبتا سریع و آسان است. این زبان، هنگام کار با حجم زیادی از اطلاعات، برای دستکاری داده ها و انجام کارهای تکراری مفید است.
مصورسازی داده ها یکی دیگر از زمینه های محبوب و در حال توسعه مورد علاقه است. باز هم در بسیاری از نقاط قوت پایتون نقش دارد. پایتون علاوه بر انعطافپذیری و منبع باز بودن، کتابخانههای گرافیکی متنوعی را با انواع ویژگیها ارائه میکند.
اگر به دنبال ایجاد یک نمایش گرافیکی ساده یا یک طرح تعاملی تر باشید، می توانید کتابخانه ای متناسب با نیاز خود پیدا کنید. به عنوان مثال می توان به Pandas و Plotly اشاره کرد. امکانات بسیار زیاد است و به شما امکان می دهد داده ها را تصویر سازی کنید.
شما می توانید انواع برنامه ها را با استفاده از پایتون ایجاد کنید. از این زبان همه منظوره می توان برای خواندن و ایجاد فهرست فایل ها، ایجاد رابط کاربری گرافیکی و API و موارد دیگر استفاده کرد. چه برنامه های بلاک چین، برنامه های صوتی و تصویری، یا برنامه های یادگیری ماشینی، می توانید همه آنها را با پایتون بسازید.
پایتون یک انتخاب عالی برای توسعه وب است. زیرا چارچوبهای توسعه وب پایتون زیادی برای انتخاب وجود دارد، مانند جنگو، پیرامید و فلاسک. این چارچوب ها برای ایجاد سایت ها و سرویس هایی مانند Spotify، Reddit و Mozilla استفاده شده اند.
به لطف کتابخانهها و ماژولهای گستردهای که با چارچوبهای پایتون ارائه میشوند، عملکردهایی مانند دسترسی به پایگاه داده، مدیریت محتوا و مجوز دادهها همگی امکانپذیر و به راحتی قابل دسترسی هستند. با توجه به تطبیق پذیری آن، جای تعجب نیست که پایتون به طور گسترده در توسعه وب مورد استفاده قرار گیرد.
اگرچه پایتون از یک استاندارد صنعتی در توسعه بازی فاصله دارد، اما کاربردهای خود را در این صنعت دارد. ایجاد بازی های ساده با استفاده از این زبان برنامه نویسی امکان پذیر است، به این معنی که می تواند ابزار مفیدی برای توسعه سریع یک نمونه اولیه باشد. به طور مشابه، توابع خاصی (مانند ایجاد درخت گفتگو) در پایتون وجود دارند.
اگر در پایتون یا توسعه بازی تازه کار هستید، می توانید نحوه ساخت یک بازی متنی در پایتون را نیز بیابید. با انجام این کار، می توانید بر روی انواع مهارت ها کار کنید و دانش خود را در زمینه های مختلف ارتقا دهید.
طراحی ساده و ظریف Python و سینتکس آن، الهام بخش ایجاد زبان های برنامه نویسی جدید شده است. زبان هایی مانند Cobra ،CoffeeScript و Go همگی از سینتکس مشابه Python استفاده می کنند.
این واقعیت همچنین به این معنی است که پایتون یک زبان دروازه مفید است. بنابراین، اگر در برنامه نویسی کاملا تازه کار هستید، درک Python می تواند به شما کمک کند که راحت تر به سایر زمینه ها منشعب شوید.
Python به طور فزاینده ای در دنیای مالی مورد استفاده قرار می گیرد و اغلب در زمینه هایی مانند تجزیه و تحلیل کمی و کیفی استفاده می شود. این زبان می تواند یک ابزار ارزشمند در تعیین روند قیمت دارایی ها و پیش بینی ها، و نیز در خودکارسازی گردش کار در منابع مختلف داده باشد.
همانطور که قبلا گفته شد، پایتون یک ابزار ایده آل برای کار با مجموعه داده های بزرگ است و کتابخانه های زیادی برای کمک به جمع آوری و پردازش اطلاعات در دسترس هستند. به این ترتیب، این یکی از زبان های ترجیحی در صنعت مالی است.
یکی دیگر از کاربردهای شگفتانگیز پایتون، در زمینه بهینهسازی موتورهای جستجو (SEO) است. SEO که اغلب از اتوماسیون سود می برد، مطمئنا می تواند از پایتون کمک بگیرد. چه در حال اجرای تغییرات در چندین صفحه یا دسته بندی کلمات کلیدی باشید، پایتون می تواند کمک کند.
فناوریهای نوظهور مانند پردازش زبان طبیعی (NLP) نیز احتمالا برای افرادی که در سئو کار میکنند، مفید هستند. پایتون میتواند ابزاری قدرتمند در توسعه این مهارتهای NLP و درک اینکه افراد چگونه جستجو میکنند و موتورهای جستجو چگونه نتایج را برمیگردانند، باشد.
وقتی میپرسید «پایتون برای چه چیزی استفاده میشود؟» احتمالا انتظار نداشتید که طراحی در این لیست قرار بگیرد. با این حال، پایتون می تواند برای توسعه برنامه های کاربردی طراحی گرافیک استفاده شود. با شگفتی می توان گفت که این زبان در طیف وسیعی از نرم افزارهای تصویربرداری دو بعدی مانند Paint Shop Pro و Gimp استفاده می شود.
پایتون حتی در نرمافزارهای انیمیشن سه بعدی مانند Lightwave، Blender و Cinema 4D استفاده میشود و نشان میدهد که این زبان چقدر سودمند است.
یادگیری پایتون، فراتر از یادگیری زبان برنامه نویسی پایتون است. برای انجام کارهای مفید با پایتون، باید بیشتر از ویژگی های یک زبان برنامه نویسی واحد بدانید. در عین حال، برای خلاق بودن نیازی به درک تمام جنبه های پایتون ندارید.
به طور واقع بینانه، احتمالا هرگز همه چیزهایی را که باید در مورد اکوسیستم پایتون بدانید، یاد نخواهید گرفت. چیزهای زیادی برای دانستن وجود دارد! بنابراین، تفکیک سفر خود به بخشهای مختلف مفید است. این تفکیک، رویکرد ادامه حرکت در مسیر درست را برای شما آسان تر می کند.
وقتی به سطوح مختلف مهارت فکر می کنید، ممکن است به سه دسته بندی معروف فکر کنید:
با این حال، تعیین اینکه چه زمانی فردی مبتدی نیست، دشوار است و حتی برنامه نویسان با تجربه اغلب خود را متخصص نمی دانند. از سوی دیگر، برخی از برنامه نویسان با توانایی پایین ممکن است خود را متخصص تصور کنند!
یادگیری پایتون زمان بر است و این زمان به تلاش و پشتکار شما بستگی دارد. با توجه به شناختی که از خود دارید برای تسلط به اصول پایتون برنامه زیری کنید و برای یادگیری هر کدام، یک بازه زمانی در نظر بگیرید.
در نظر گرفتن موارد زیر می تواند در یادگیری پایتون راه گشای شما باشد:
برای تبدیل شدن به یک توسعهدهنده خوب پایتون، اهداف یادگیری شما بهتر است شبیه موارد زیر باشند و باید برای آن ها زمان بگذارید:
در زیر یک راهنمایی برای یادگیری پایتون در دو ماه و پنج ماه آورده شده است.
اگر خیلی عجله دارید و می خواهید پایتون را در 2 ماه یاد بگیرید از الگوی زیر استفاده کنید:
پس برای یادگیری پایتون در دو ماه باید روزانه 4 تا 5 ساعت یادگیری و 2 تا 3 ساعت تمرین در هر روز داشته باشید.
اگر بتوانید این روال را برای 2 ماه حفظ کنید، پایتون را به خوبی یاد خواهید گرفت.
اگر شاغل یا دانشجو هستید، می توانید پایتون را در مدت 5 ماه یاد بگیرید.
جذاب ترین بخش این مقاله همین بخش است؛ بخش شیرین درآمد! این بخش را در دو قسمت بررسی می کنیم: قسمت اول درآمد برنامه نویس پایتون در ایران و قسمت دوم درآمد برنامه نویس پایتون در خارج از ایران است.
با یادگیری پایتون مطمئن باشید هیچ وقت بیکار نخواهید بود و همیشه برای شما کار وجود خواهد داشت. پس از یادگیری آن، باید با توجه به علاقه خود، یادگیری را به عنوان مثال در زمینه توسعه وب یا غیره توسعه دهید.
اگر به سایت جاب ویژن مراجعه کنید می توانید فرصت های شغلی برای برنامه نویس پایتون را ببینید:
با استفاده از روش های زیر می توانید به درآمد برسید:
درآمد برنامه نویس پایتون با توجه مهارتی که دارد در ایران در سه بخش در زیر آمده است:
فرصت های شغلی را که برای یادگیری پایتون در خارج کشور وجود دارد، می توانید در این نشانی مشاهده کنید.
سایت های خارجی که با آن ها می توانید به درآمد برسید:
میزان درآمد برنامه نویس پایتون در آمریکا، با توجه مهارت در سه بخش در زیر آمده است:
پس از دانلود و نصب پایتون، اکنون نوبت نوشتن نخستین برنامه پایتون است. برای این کار ویرایشگر کد خود را باز می کنیم و یک فایل با یک نام دلخواه ایجاد می کنیم. من نام آن را main.py می گذارم و سپس آن را در یک مسیر دلخواه ذخیره می کنم. این فایل حتما باید پسوند py را داشته باشد. از هر ویرایشگر کد که خواستید می توانید استفاده کنید.
برنامه ای که می نویسیم یک برنامه خیلی ساده با پایتون است. این برنامه یک را از ورودی می گیرد و مشخص می کند آیا زوج است یا نه.
عدد زوج چه عددی است؟ عدد زوج عددی است که اگر آن را به دو تقسیم کنیم، باقیمانده صفر شود.
کد این برنامه در زیر آمده است:
number=int(input("Enter a number: ")) if number % 2 == 0: print("even") else: print("odd")
اگر عدد زوج باشد در خروجی عبارت «even» و اگر فرد باشد «odd» را خواهیم دید. به عنوان مثال اگر 20 را وارد کنیم خروجی زیر را خواهیم دید:
این مقاله شاید جامع ترین مقاله برای آشنایی با پایتون به زبان فارسی باشد. تلاش کردیم در آن پاسخ کاملی برای "پایتون چیست" ارائه دهیم تا شما مخاطب عزیز با این زبان برنامه نویسی مطرح آشنا شوید. این مقاله را یکبار نخوانید و سعی کنید آن را چندین بار مرور کنید، چون شما را واقعا از سایر مقاله هایی که در مورد آشنایی با زبان پایتون هستند، بی نیاز می کند. اگر تا به اینجا مقاله را خواندید، به شما تبریک می گویم و امیدوارم سفر جذابی برایتان بوده باشد.
در این قسمت، به پرسشهای تخصصی شما دربارهی محتوای مقاله پاسخ داده نمیشود. سوالات خود را اینجا بپرسید.
در این قسمت، به پرسشهای تخصصی شما دربارهی محتوای مقاله پاسخ داده نمیشود. سوالات خود را اینجا بپرسید.
در این قسمت، به پرسشهای تخصصی شما دربارهی محتوای مقاله پاسخ داده نمیشود. سوالات خود را اینجا بپرسید.