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

خلاصه‌ای از پایتون

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

پایتون ۲ یا ۳ (!)

محاله که سراغ پایتون بخواید برید و به این مسئله نخورید! ۲ نسخه از پایتون داریم که باهم سازگار نیستند تقریبا و کدهای هرکدوم به سادگی با نسخه‌ی دیگه اجرا نمیشه یا ممکنه اجرا بشه و همون نتیجه رو نده!!! پایتون ۳ جدیدتره و تقریبا همه در حال مهاجرت بهش هستند و اگر الان می‌خواید شروع کنید به کد زدن حتما از پایتون ۳ استفاده کنید مگر در شرایط خاص (وابستگی به کدی که فقط با پایتون ۲ کار می‌کنه). در این سری آموزش‌ها هم پایتون ۳ استفاده میشه.

پایتون، سایتون، جایتون، آیرون‌پایتون، آناکوندا، پای‌پای و غیره

نسخه‌های مختلفی از پایتون وجود داره که میشه استفاده‌های مختلفی ازشون کرد ولی تا پیشنهاد می‌کنم تا زمانی که نیازی ندارید با هرکدوم از این نسخه‌ها کار کنید به همون پایتون اصلی (CPython) (سی‌پایتون همون پایتون هست) کار کنید. من هم در طول این مسیر از همون پایتون اصلی استفاده می‌کنم.

پایتون کنده یا سریعه؟ بازار کار داره؟ کجاها ازش استفاده کردن؟

اگر بخوام مهم‌ترین ویژگی پایتون رو نام ببرم قطعا «سادگی و آسانی» رو انتخاب می‌کنم. پایتون رو میشه خیلی سریع یاد گرفت (نه مسلط شد!!!) و میشه خیلی سریع باهاش کد زد و به نتیجه رسید.

سرعت (اجرا) یه ویژگی نسبیه و نمی‌شه گفت پایتون زبون سریعیه یا نه! در درجه‌ی اول باید دید که با چه زبونی مقایسه میشه. کلی زبون از پایتون سریع‌ترن و پایتون هم از کلی زبون سریع‌تره. در درجه‌ی دوم پارامترهای مختلفی تو سرعت تاثیر دارن. مثل اینکه پایتون ۲ هست یا ۳ (۲ سریع‌تره معمولا). خود سی‌پایتون اجرا می‌کنه یا نسخه‌های دیگه (مثلا پای‌پای می‌تونه تا زیادی سریع‌تر باشه) و اینکه کدی که داریم می‌سنجیم بهینه است؟ و اصلا پایتون زبون مناسبی برای پیاده‌سازی این کد هست یا نه؟ اگر سرعت اجرا براتون خیلی مهمه و می‌دونید چرا (با آمار و اطلاعات) احتمالا خودتون بهتر می‌تونید تشخیص بدید پایتون مناسب شما هست یا نه. یا اینکه چجوری از پایتون استفاده کنید تا به اون انتظاراتتون برسید.

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

در مورد بازار کار دو نکته بیشتر ندارم که بگم. اول اینکه پایتون هم در ایران هم در دنیا بازار کار داره و بازا کار داغی هم داره! دوم و آخر اینکه شما در هر چیزی تخصص داشته باشید، اگر بازار کار هم نداشته باشه براش ایجاد میشه!

نصب پایتون و ویرایشگر برای پایتون

پایتون کراس-پلتفرم و تقریبا یعنی روی همه‌ی سیستم عامل‌ها قابل اجرا و استفاده است.

برای نصب پایتون اگر از لینوکس یا مک استفاده می‌کنید که به صورت پیشفرض نصبه و اگر از ویندوز استفاده می‌کنید به سایت خودش برید و پایتون ۳ رو دانلود و نصب کنید :)

برای ویرایشگر یا IDE اگر از ویم یا ایمکس استفاده می‌کنید که به استفاده از همون ادامه بدید. اگر از محصولات جت‌برینز استفاده می‌کنید که پایچارم گزینه‌ی شماست و اگر از چیزهای دیگه(اتم، سابلایم، وی‌اس‌کد و …) استفاده می‌کنید که فقط دنبال پلاگین پایتون براش بگردید. و اگر از هیچ کدوم تا حالا استفاده نکردید یا در کل برای پایتون دنبال ابزار جدیدی هستید من به شما پایچارم رو پیشنهاد می‌کنم.

سلام دنیا

print("سلام دنیا!")

به همین سادگی اول برنامه پایتون رو نوشیم :))

امیدوارم تا اینجا براتون مفید بوده باشه و اگر هم تا اینجاش رو خودتون بلد بودید عجله نکنید و منتظر پست‌های بعدی باشید.

بروزرسانی: پست بعد رو اینجا می‌تونید ببینید