آموزش کامل برنامه نویسی با پایتون از صفر تا صد

آموزش کامل برنامه نویسی با پایتون از صفر تا صد

  buy_icon  

معرفی و آماده سازی پایتون

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

اگر می خواهید پایتون را به صورت عمیق تر و با مثال یادبگیرید و بعد وارد دنیای هوش مصنوعی و داده کاوی شوید، دوره جامع داده کاوی و یادگیری ماشین من را حتما مشاهده کنید. این دوره ابتدا تمام مباحث این مقاله و فراتر از آن را به شما به صورت گام به گام با مثال آموزش می دهد و پس از آن وارد مباحث یادگیری ماشین و یادگیری عمیق با پایتون می شود. این مجموعه شامل بیش از 20 پروژه کاربردی است. برای اطلاعات جامع و دقیق و خرید مجموعه  اینجا را کلیک کنید.

چرا پایتون را انتخاب کنیم؟

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

  • برنامه نویسی سطح بالا: به این معناست که شما با کمترین دستورات و کمترین پیچیدگی می توانید برنامه هاتون را بنویسید، چیزی که شاید در زبان مطرح دیگه مثل جاوا دیده نشه. مثلا همانجور که در ادامه خواهید دید، برای تعریف متغیر نیاز به تعریف نوع داده نیست و پایتون به صورت هوشمندانه خودش این رو میفهمه، یا در مباحث شی گرایی پیچیدگی زبان های دیگر را داخل نمی بینیم.
  • جامعه بسیار بزرگ آنلاین: این جامعه بزرگ باعث شده تا هر سوال و مشکلی براتون پیش میاد با سرچ داخل گوگل به سرعت به جواب برسید، مشکلاتی که فکر می کردید امکان نداره جواب رو پیدا کنید، می بینید قبلا خیلی ها بهش برخوردن و ده ها راه حل براش وجود داره. بهترین سایت هم طبیعتا stackoverflow هست. از طرف دیگه این جامعه بزرگ باعث شده تا دارای کتابخانه ها و ماژول های غنی ای برای هر حوزه ای باشه. برای همین هست که با پایتون هم میشه طراحی وب اپلیکیشن کرد و هم برنامه های هوش مصنوعی نوشت و یا حتی اپلیکیشن موبایل طراحی کرد.
  • هوش مصنوعی و یادگیری عمیق: یکی از حوزه هایی که در سلطه پایتون قرار داره حوزه هوش مصنوعی هست که این دلیل این زبان رو به مناسب ترین زبان برای آینده می کنه. کتابخانه های بسیار قدرتمند مثل تنسورفلو که توسط شرکت های بزرگی همچون گوگل برای یادگیری عمیق و شبکه های عصبی ارایه شده پایتون را زبان محبوبی کرده برای علاقه مندان این حوزه.

 

کدام نسخه از پایتون را انتخاب کنم؟

دو نسخه اصلی از پایتون وجود دارد، پایتون 2 و پایتون 3. پایتون 2 و 3 تا حدودی با یکدیگر متفاوت هستند. دیگه تقریبا میشه گفت که نسخه 2 داره از رده خارج میشه و بهتره به هیچ وجه مگر در موارد خاص مثلا اگر برنامه فعلیتون با نسخه 2 کار میده، سراغش نرید. اگر بیشتر در مورد تفاوت این دو نسخه بدونید حتما مطلب “کدام نسخه پایتون را استفاده کنیم؟ پایتون ورژن ۲ یا پایتون۳”  رو بخونید. اخرین نسخه تا این لحظه 3.8 هست که پیشنهاد ما هم استفاده از این نسخه هست.

 

نصب پایتون در لینوکس اوبونتو و ویندوز

اگر از سیستم عامل اوبونتو استفاده می کنید احتمالا پایتون به صورت پیشفرض روی اون هست. اوبونتو نسخه 18 دارای پایتون 3.6 هست که نیازی به تغییر اون نیست و نسخه مناسبی هست. ولی اگر ندارید یا میخواید آپدیت کنید این دستورات را در ترمینال وارد کنید:

 

برای نصب پایتون در ویندوز به دو طریق می توانید عمل کنید.

  • دانلود مستقیم فایل نصب پایتون برای نسخه مورد نظر از سایت اصلی python.org و نصب آن.
  • نصب بسته های نرم افزاری که به صورت پیشفرض پایتون و تمام ماژول های معروف را در بر دارد مانند آناکوندا (Anaconda) یا کانوپی (Enthought Canopy Express)

 

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

 

pip  چیست؟

یکی از ابزارهایی که هنگام نصب پایتون نصب خواهد شد، pip است. در واقع pip یک دستوراست که با اجرای آن می توان سرورهایی که کتابخانه های پایتون روی آن قرار دارد متصل شد و پکیج مورد نظر را دانلود و نصب کرد که استفاده از آن را در ادامه مشاهده خواهیم کرد. درواقع pip یک ابزار برای مدیریت پیکج های پایتونی است. مثلا با دستور pip freeze می توان لیست تمام پیکج های پایتونی نصب شده را مشاهده کرد. در صورتی که pip نصب نیست، لازم است تا فایل get-pip.py را دریافت کرده و سپس در مسیر فایل دستور python get-pip.py را اجرا کنید تا نصب شود.

 

 

ماژول در پایتون

ماژول های درواقع همان کتابخانه ها هستند. اینها پکیج هایی هستند که برای مقصود مورد نظر قابل نصب می باشند. نصب پیکج های پایتون با دستور pip install package-name در خط فرمان انجام می شود، که باید به جای package-name نام ماژول مورد نظر نوشته شود. برای مثال اگر میخواهیم با پایتون به سهولت با داده ها کار کنیم و داده کاوی انجام دهیم، ماژول pandas بسیار کاربردی است و برای نصب آن دستور pip install pandas را در ترمینال تایپ میکنیم تا این پیکیج به پکیج های پایتون اضافه شود. در زیر چند نمونه از معروف ترین ماژول های پایتون را معرفی می کنیم :

Numpy: تعریف و کار با آرایه های چند بعدی به صورت حرفه ای در پایتون. همچنین شامل توابع ریاضی متنوعی برای اعمال یا تولید ارایه ها می باشد.

Scipy: شامل توابع سطح بالا برای مهندسی و علوم پایه مانند توابع فوریه، ریاضیات جبر خطی و بهینه سازی است.

Matplotlib: قابلیت ترسیم انواع نمودار ها از هیستوگرام گرفته تا نمودارهای گرمایی.

Pandas: مناسب برای کار با داده های حجیم با ساختار مشخص. یکی از پایه های داده کاوی در پایتون.

Scikit-learn: ماژولی قدرتمند برای هوش مصنوعی و یادگیری ماشین. دارای ابزارهایی برای یادگیری ماشین، مدلسازی آماری شامل کلاس بندی، رگرسیون، خوشه بندی و کاهش بعد.

Scrapy: مناسب برای کرالینگ و استخراج محتوا از وبسایت ها.

 

 

محیط های برنامه نویسی پایتون

گزینه های متعددی برای انتخاب یک محیط برنامه نویسی مناسب برای پایتون وجود دارد که در زیر به صورت مختصر به چند مورد آن اشاره می کنیم:

  • استفاده از خط فرمان cmd در ویندوز یا شل در لینوکس. ترمینال یا شل سیستم عامل خود را باز کرده و پس از تایپ python اینتر کنید. حالا به شل پایتون منتقل می شوید که می توانید دستورات پایتون را اجرا کنید.

    استفاده از محیط اصلی پایتون با نام IDLE که به صورت خودکار نصب می شود. با جستجوی IDLE در منوی استارت ویندوز پنجره زیر باز می شود که میتوانید در آن کدهای پایتون را بنویسید و خروجی بگیرید.

    استفاده از محیط مبتنی بر مرورگر jupyter notebook. ابتدا لازم است تا بسته های لازم به صورت زیر نصب گردد:

  • Pip install jupyter

پس از نصب بسته ، با دستور زیر دفترچه jupyter برای کد  نویسی باز می شود:

jupyter notebook

 

 

 

محیط مجازی (virtual environment)

محیط مجازی یا virtualenv یک ابزار برای ایجاد محیط های مستقل برای برنامه نویسی پایتون است. در واقع محیط مجازی یک پوشه ایجاد می کند که تمام ماژول ها و پیکج های لازم برای پروژه مورد نظر در آن ریخته می شود. بنابراین برای دسترسی به آن ماژول های خاص لازم است تا آن محیط مجازی فعال شود. لازم به ذکر است استفاده از محیط مجازی کاملا اختیاری است و در مواقعی که داریم روی چندین پروژه به صورت همزمان کار می کنیم مورد توجه قرار می گیرد.

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

با اجرای دستور زیر یک محیط مجازی ایجاد می شود:

و با دستور زیر محیط در ویندوز فعال می شود:

فعالسازی محیط مجازی در لینوکس به صورت زیر است :

برای غیر فعالسازی لازم است تا عبارت زیر تایپ شود:

 

پرش در برنامه نویسی با پایتون

اگر می خواهید پایتون را به صورت عمیق تر و با مثال یادبگیرید و بعد وارد دنیای هوش مصنوعی و داده کاوی شوید، دوره جامع داده کاوی و یادگیری ماشین من را حتما مشاهده کنید. این دوره ابتدا تمام مباحث این مقاله و فراتر از آن را به شما به صورت گام به گام با مثال آموزش می دهد و پس از آن وارد مباحث یادگیری ماشین و یادگیری عمیق با پایتون می شود. این مجموعه شامل بیش از 20 پروژه کاربردی است. برای اطلاعات جامع و دقیق و خرید مجموعه  اینجا را کلیک کنید.

فاصله (ایندنت)

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

 

تعریف متغیر در پایتون

برای تعریف متغیر نیازی به مشخص کردن تایپ آن (نوع داده) نیست و تنها کافی است متغیر را برابر مقدار آن قرار دهیم و بعد پایتون به صورت خودکار نوع آن را تعیین می کند. بدین صورت :

برای دیدن نوع متغیر کافی است از دستور type () استفاده کنیم که به عنوان ورودی نام متغیر را می گیرد:

که خروجی بدین صورت خواهد شد:

که نشان دهنده نوع int  است.

در صورت نیاز، حذف یک یا چند متغیر به صورت زیر انجام می شود:

 

انواع داده در پایتون

پایه ترین نوع داده ها در پایتون شامل اعداد (numbers)، رشته (string) و بولین (Boolean) می باشد. نوع اعداد خود شامل سه نوع عددی می باشد: int, float, complex

نوع دیگری از داده ها می باشد که این داده های سطح پایین تر را در برمی گیرد از جمله لیست (list)، تاپل (tuple)، دیکشنری (dict) و ست (set).

موارد که گفته شد را تقریبا می توان جزو مهمترین نواع داده ای در پایتون دانست. که در ادامه اشاره ای کوتاه به آن ها می کنیم.

Numbers (int, float)

 

string

رشته (مجموعه ای از کاراکترها) با دابل کوتیشن “” یا کوتیشن ‘’ مشخص می شود.

 

list

لیست (list) همان آرایه در دیگر زبان های برنامه نویسی است. به این صورت که مقادیر مختلف درون براکت نوشته می شوند و با کاما از هم جدا می شوند به صورت زیر :

 

tuple

tuple بسیار شبیه به list است، تنها به جای براکت لازم است تا از پرانتز ( ) استفاده شود.

 

اما تفاوت اساسی بین tuple و list این است که نمی توان به tuple  مقادیر جدیدی بعد از تعریف اضافه کرد اما به list می توان.

بنابراین می گویند که list از نوع mutable یعنی تغییر پذیر است. در صورتی که tuple از نوع immutable یا تغییر ناپذیر است.

 

dictionary

این نوع داده به صورت کلید و مقدار (key, value) کار می کند. برای نمونه به صورت زیر :

 

حال برای دسترسی به مقادیر باید از کلید مربوطه استفاده شود به این صورت :

 

دیکشنری از نوع mutable است.

 

دستورات شرطی و حلقه ها در پایتون

گزاره شرطی با if

با استفاده از دستورات زیر یک نام از کاربر درخواست می شود و نام دریافتی با دو نام پیشفرض مقایسه می شود و پیغام متناسب ظاهر می شود:

 

 

حلقه for

در برنامه زیر با استفاده از حلقه for المان های یک لیست نمایش داده می شود:

 

حلقه while

در برنامه زیر تا زمانی که عدد 42 وارد نشده است، از کاربر عدد دریافت می شود:

 

ایجاد تابع در پایتون

تعریف تابع در پایتون به صورت زیر انجام می شود:

 

و استفاده از آن به این صورت است:

و خروجی بدین صورت خواهد شد:

 

‘this is input: milad’

 

در صورتی که بخواهیم ورودی از نوع tuple باشد باید به این صورت تعریف شود:

 

بنابراین فراخوانی آن به صورت زیر می شود:

 

 

و خروجی :

one

two

three

 

ترکیب دو نوع تعریف بالا به صورت زیر می شود:

و نحوه استفاده از آن:

و خروجی آن:

The family of milad consist of

(‘dad’, ‘mom’, ‘brother’, ‘sister’)

 

 

اگر بخواهیم در ورودی یک تابع از داده نوع dictionary استفاده کنیم، باید به این صورت تعریف کنیم:

 

تعریف کلاس در پایتون

تعریف کلاس در پایتون بسیار ساده است. برای مثال برنامه زیر را نگاه کنید:

 

در این کلاس nameوageوurl به عنوان داده کلاس با دادن یک مقدار اولیه تعریف شده اند. تابع born_year هم به عنوان متد کلاس عمل میکند.

تعریف شی جدید به این صورت انجام می شود:

و دسترسی به متغیرها و متدهای شی جدید به صورت زیر است:

اگر بخواهیم از کلاس قبل برای ایجاد یک زیر کلاس جدید استفاده کنیم (ارث بری) به این صورت عمل میکنیم :

 

و نحوه تعریف شی و استفاده از به صورت زیر می شود:

 

در صورتی که بخواهیم هنگام تعریف مقادیر اولیه را برای متغیرهای کلاس تنظیم کنیم لازم است تا به این صورت کلاس تعریف شود:

 

و هنگام ایجاد شی جدید مقادیر دلخواه را به عنوان ورودی می دهیم:

 

مثال ساده و کاربردی با پایتون

در انتها بیایید یک مثال کامل و جامع برای مرور تمام مفاهیمی که تا الان یادگرفتیم با پایتون پیاده سازی کنیم.

ابتدا یک فایل تنی txt با نام students.txt ایجاد کرده و مقادیر زیر را داخل آن بریزید:

milad shiri, 1-7-1991, 14, 13, 2.5

ali hamidi, 10-3-1990, 19, 17.5, 4

hamed amini, 4-4-1992, 20, 14.75, 3

behrooz heydari, 1-9-1991, 12, 15.25, 0

farhad aram, 23-2-1990, 15.5, 15, 3.5

 

حال در این مثال می خواهیم ابتدا یک کلاس مناسب برای دانش آموزان درست کرده و سپس  این فایل متنی را خوانده ، اطلاعات را از آن استخراج کنیم و هر دانش آموزش را به صورت یک شی ذخیره کنیم.

 

برنامه کامل به این صورت می شود:

اگر می خواهید پایتون را به صورت عمیق تر و با مثال یادبگیرید و بعد وارد دنیای هوش مصنوعی و داده کاوی شوید، دوره جامع داده کاوی و یادگیری ماشین من را حتما مشاهده کنید. این دوره ابتدا تمام مباحث این مقاله و فراتر از آن را به شما به صورت گام به گام با مثال آموزش می دهد و پس از آن وارد مباحث یادگیری ماشین و یادگیری عمیق با پایتون می شود. این مجموعه شامل بیش از 20 پروژه کاربردی است. برای اطلاعات جامع و دقیق و خرید مجموعه  اینجا را کلیک کنید.

 

در صورت استفاده از مطالب این سایت لطفا به سایت ارجاع دهید

دیدگاه شما

( الزامي )

(الزامي)