چاپ کردن این صفحه
جمعه, 31 مرداد 1399 ساعت 18:42

دوره آموزش رایگان زبان برنامه نویسی پایتون (Python) از مقدماتی تا پیشرفته

خلاصه مطلب: دوره آموزش صفر تا صد زبان برنامه نویسی پایتون (Python) به صورت کامل و رایگان از مقدماتی تا پیشرفته به همراه حل تمرین‌های مفید و کاربردی برای کسب مهارت بیشتر.

 قسمت‌های ۶۶ و ۶۷ و ۶۸ منتشر شدن 

پایتون چیه؟

سال ۱۹۹۱ میلادی زبان برنامه‌نویسی پایتون (Python) منتشر شد اما به دلیل نوپا بودن، یه زبان برنامه نویسی پایین رده محسوب می‌شد. در طول زمان پایتون پیشرفت کرد و گسترده‌تر شد، همچنین برنامه‌نویس‌ها درک بهتری نسبت بهش پیدا کردن و هر روز افراد علاقه‌مند به پایتون بیشتر شدن تا اینکه امروزه پایتون به یکی از محبوب ترین زبان های برنامه نویسی دنیا تبدیل شده و کاربردهای زیادی هم داره! فلسفه طراحی زبان برنامه نویسی پایتون به قابلیت شی‌گرایی و نحوه ی تعامل افراد با اون تاکید داره. شی‌گرایی یکی از مباحث پیشرفته در برنامه نویسیه که در این دوره‌ی مقدماتی تا پیشرفته به اون پرداخته میشه ولی منظور از نحوه‌ی تعامل، یعنی نحوه‌ی تعامل کدهای پایتون در نوشتن، خواندن و درک کردن اون توسط انسان هاست تا سرعت فرآیند های یادگیری، ساختن انواع برنامه‌ها و پیش بردن پروژه‌ها بیشتر بشه. به طوری که کدهای پایتون و نحوه ی کد نویسی در اون شبیه به زبان آدمه، اما آدمی که زبانش انگلیسی باشه :)

چرا باید پایتون یاد بگیرم؟

پایتون در عین آسونی، کاربردهای زیادی هم تو زمینه های مختلف مثل هوش مصنوعی، داده کاوی، پردازش تصویر، برنامه نویسی وب، برنامه نویسی برای کامپیوترهای شخصی و ... داره. همچنین از این زبان برنامه نویسی پرکاربرد در ساخت برنامه هایی مثل یوتیوب (YouTube)، اینستاگرام (ّInstagram)، درآپ باکس (Dropbox) و ... استفاده شده. احتمالا درباره طراحی وب با زبان برنامه نویسی پی اچ پی (PHP) و فریمورک لاراول (Laravel) شنیده باشین ولی از زبان برنامه نویسی پایتون هم میشه در زمینه طراحی وب استفاده کرد. یکی از فریمورک های پایتون به اسم جنگو (Django) برای طراحی وب و برنامه نویسی سمت سرور استفاده می‌شه که خیلی هم قدرتمنده و هر روز محبوبیت و استفاده از اون در دنیا و حتی داخل ایران هم داره بیشتر و بیشتر میشه!

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

  1. برنامه نویسی به زبان آدمیزاد چیه؟
  2. زبان های برنامه نویسی سطح پایین (Low Level) و سطح بالا (High Level) چیه؟
  3. کدوم زبان برنامه نویسی رو یاد بگیرم؟
  4. الگورتیم و الگوریتم نویسی چیه؟
  5. پیش نیازهای شروع برنامه نویسی

تفاوت پایتون با سایر زبان های برنامه نویسی چیه؟

زبان های برنامه نویسی زیادی مثل سی (C)، سی پلاس پلاس(++C)، سی شارپ(#C)، جاوا (Java)، جاوا اسکریپت (Java Script)، پی اچ پی (PHP) و ... وجود داره و از هرکسی بپرسین کدوم زبان برنامه نویسی رو یاد بگیرم؛ یه زبانی رو پیشنهاد میده و بعضیام میگن فقط فلان زبان برنامه نویسی خوبه برای یادگیری و...! اما حقیقت اینه که بهترین بین زبان های برنامه نویسی وجود نداره، بلکه هر زبان برنامه نویسی در یه زمینه یا زمینه هایی کاربرد داره و هرکدوم مزایا و معایب خودشون رو دارن. از خوبی های پایتون میشه به سادگی و در عین حال قدرتمند بودن اون اشاره کرد که البته این زبان برنامه نویسی محبوب؛ کتابخونه های زیادی هم داره که میشه با استفاده از اونا در زمینه های مختلفی کارکرد.

  دوره آموزش رایگان زبان پایتون از مقدماتی تا پیشرفته | تماشا از یوتیوب  

 

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

  • قسمت ۰۱) آشنایی با برنامه‌نویسی و معرفی دوره‌ی آموزشی
    قسمت ۰۲) نصب ابزار موردنیاز: نصب پکیج پایتون و نرم افزار Visual Studio Code
    قسمت ۰۳) متغییرها، مقدارها و انواع داده‌ها در پایتون
    قسمت ۰۴) نحوه‌ی ورودی گرفتن و نمایش خروجی، همچنین آشنایی با عملگرها و عملوندها در پایتون
    قسمت ۰۵) بولین‌ها و عملگرهای منطقی
    قسمت ۰۶) دستورات شرطی
    قسمت ۰۷) حل تمرین و یادگیری نکات بیشتر
    قسمت ۰۸) حل تمرین و یادگیری نکات بیشتر
    قسمت ۰۹) حل تمرین و یادگیری نکات بیشتر
    قسمت ۱۰) حل تمرین و یادگیری نکات بیشتر
    قسمت ۱۱) درک مفهوم فهرست کردن (ایندکس کردن)
    قسمت ۱۲) ایندکس کردن رشته‌ها در پایتون
    قسمت ۱۳) ایندکس کردن لیست‌ها در پایتون
    قسمت ۱۴) برش زدن رشته‌ها در پایتون
    قسمت ۱۵) برش زدن لیست‌ها در پایتون
    قسمت ۱۶) حلقه‌ی تکرار فور (For)
    قسمت ۱۷) حلقه‌ی تکرار فور (For)
    قسمت ۱۸) حلقه‌ی تکرار فور (For)
    قسمت ۱۹) حلقه‌ی تکرار وایل (While)
    قسمت ۲۰) حل تمرین و یادگیری نکات بیشتر
    قسمت ۲۱) حل تمرین و یادگیری نکات بیشتر
    قسمت ۲۲) رشته‌ها (Strings)
    قسمت ۲۳) رشته‌ها (Strings)
    قسمت ۲۴) رشته‌ها (Strings)
    قسمت ۲۵) رشته‌ها (Strings)
    قسمت ۲۶) آشنایی با چند مفهوم
    قسمت ۲۷) لیست‌ها
    قسمت ۲۸) لیست‌ها
    قسمت ۲۹) لیست‌ها
    قسمت ۳۰) لیست‌ها
    قسمت ۳۱) لیست‌ها
    قسمت ۳۲) لیست‌ها
    قسمت ۳۳) لیست‌ها
    قسمت ۳۴) حل تمرین و یادگیری نکات بیشتر
    قسمت ۳۵) حل تمرین و یادگیری نکات بیشتر
    قسمت ۳۶) تاپل‌ها
    قسمت ۳۷) تاپل‌ها
    قسمت ۳۸) حل تمرین و یادگیری نکات بیشتر
    قسمت ۳۹) حل تمرین و یادگیری نکات بیشتر
    قسمت ۴۰) نکاتی راجب برنامه نویسی
    قسمت ۴۱) دیکشنری‌ها
    قسمت ۴۲) دیکشنری‌ها
    قسمت ۴۳) دیکشنری‌ها
    قسمت ۴۴) حل تمرین و یادگیری نکات بیشتر
    قسمت ۴۵) حل تمرین و یادگیری نکات بیشتر
    قسمت ۴۶) حل تمرین و یادگیری نکات بیشتر
    قسمت ۴۷) مجموعه‌ها (Sets)
    قسمت ۴۸) مجموعه‌ها (Sets)
    قسمت ۴۹) مجموعه‌ها (Sets)
    قسمت ۵۰) حل تمرین و یادگیری نکات بیشتر
    قسمت ۵۱) جمع بندی پایتون مقدماتی
    قسمت ۵۲) تابع
    قسمت ۵۳) تابع
    قسمت ۵۴) تابع
    قسمت ۵۵) تابع
    قسمت ۵۶) تابع
    قسمت ۵۷) بسته بندی (Packing) و باز کردن (Unpacking)
    قسمت ۵۸) تابع
    قسمت ۵۹) تابع
    قسمت ۶۰) توابع از پیش ساخته شده (Built-in Functions)
    قسمت ۶۱) توابع از پیش ساخته شده (Built-in Functions)
    قسمت ۶۲) تابع مپ (Map Function)
    قسمت ۶۳) توابع Range و Filter
    قسمت ۶۴) تابع فیلتر (Filter Function)
    قسمت ۶۵) تابع زیپ (Zip Function)
    قسمت ۶۶) تابع زیپ (Zip Function)
    قسمت ۶۷) تابع
    قسمت ۶۸) حل تمرین و یادگیری نکات بیشتر
آخرین ویرایش در چهارشنبه, 18 مرداد 1402 ساعت 00:12

105 نظرها

  • پیوند نظر روح الله شیراوند سه شنبه, 25 آبان 1400 ساعت 01:05 ارسال شده توسط روح الله شیراوند

    Shell script experiences: write proper shell scripts to do following tasks:
    A : Make a directory for every given python le with its name, and move the le into associated
    directory. Then run mentioned python le and save the elapsed running time into a le named
    "time+index" (e.g. for " le2.py" it should be "time2") inside that directory. Then make a list of all
    times written in a separate le in the given root directory.
    B : Write a proper shell script to print the content of each le inside each directory in order, to clarify
    the corresponding sentence. Then write the sentences with order same as for directory to a le named
    "sentence.txt".

  • پیوند نظر مبین دوشنبه, 10 آبان 1400 ساعت 11:44 ارسال شده توسط مبین

    سلام
    خسته نباشین
    اموزشتون بسیار عالیه ممنون ازتون
    و اینکه لطفا اندازه ی بعضی از متن ها(مثل تیترها) و عکس هارو در وبساییتون کوچیکتر کنین، چشم رو اذیت میکنه.

  • پیوند نظر مسعود شنبه, 08 آبان 1400 ساعت 19:14 ارسال شده توسط مسعود

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

  • پیوند نظر مرتضی کریمی (باگنامه) پنج شنبه, 22 مهر 1400 ساعت 20:02 ارسال شده توسط مرتضی کریمی (باگنامه)

    سلام. قسمت‌های ۲۲ تا ۲۵ که راجب رشته‌ها هستند رو تماشا کنین تا راجب رشته‌ها اطلاعات کافی به دست بیارین. رشته‌ها (strings) نیز یکی از انواع داده‌ها (data type) توی پایتون هستن.

  • پیوند نظر پارسا امانی پنج شنبه, 22 مهر 1400 ساعت 14:10 ارسال شده توسط پارسا امانی

    سلام بر مهندس کریمی گل گلاب خودمون ببخشید مهندس من یک سوال داشتم اونم اینه که چرا ما وقتی میخوایم در پایتون یک چیزی از خانواده 'str' ها بنویسیم باید قبلش باید از تعداد کوتیشن های فرد استفاده کنیم وگرنه خطای دستوری میده ؟ مثلا من مینویسم ''hello_world'' خطای دستوری میده ولی اگر همون عبارت رو با سه تا یا پنج تا کوتیشن قبل و بعدش بنویسم (منظورم هر تعداد فرد کوتیشن هست) دیگه خطا نمیده دلیلش چیه ؟ بعدش راستی مهندس کریمی یک سوال داشتم
    اونم اینه که مثلا من یک بار نوشتم '''''w='''''hello_world (با پنج تا کوتیشن قبل و پنج تا کوتیشن بعد) بعدش که اینتر رو زدم اومدم خط بعد و باز دوباره کلمه w رو زدم و اینتر زدم ولی یکهو همون عبارت hello_world رو با پنج تا کوتیشن قبل و پنج تا کوتیشن بعد برام نیاورد و به جاش برام به چهارتا کوتیشن قبل و دوتا کوتیشن بعد برام اورد خب میخواستم بدونم علت این موضوعات چیه مهندس تروخدا یک جواب کامل و وضح به من بده بی زحمت دیگه واقعا دارم دیوونه میشم !!!!!!!!!!!!!!!!!!!!!!!!!! راستی یک سوال دیگه 'str' ها چه چیزی هستند ؟ متغیر هستند ؟ یا مقدار ؟ یا data type ؟ آقا مرتضی مرسی بابت آموزش های عالی

  • پیوند نظر مرتضی کریمی (باگنامه) سه شنبه, 13 مهر 1400 ساعت 16:08 ارسال شده توسط مرتضی کریمی (باگنامه)

    سلام. اگه منظورتون از خروجی گرفتن اینه که چطور یه عددی رو با دقت‌های اعشار مختلف چاپ کنیم، باید بگم که راجبش توی قسمت‌هایی از آموزش که در مورد مبحث رشته‌ها هست، صحبت کردم و توضیح دادم... اینم یه قطعه کد ساده برای مثال که یه عددی رو با دقت ۲ رقم اعشار چاپ میکنه... با تغییر مقدار 2f توی خط دوم به مقدارهای بیشتر (مثلا 5f)، مقدار دقت اعشار هم تغییر میکنه:
    x = 3
    print("{:.2f}".format(x))

  • پیوند نظر پارسا امانی سه شنبه, 13 مهر 1400 ساعت 14:08 ارسال شده توسط پارسا امانی

    سلام مهندس کریمی عزیز خسته نباشید ممنون بابت پاسخ خوبتون
    فقط مهندس شما از آخر یک چیزی رو نفرمودید اونم این بودش که نگفتید چطوری با دقت بیشتری از نوع float خرجی بگیریم مثلا با دقت یک هزارم خیلی ممنونم مهندس کریمی :) ببخشید ماهمش وقت شما رو هم میگیریم

  • پیوند نظر مرتضی کریمی (باگنامه) دوشنبه, 12 مهر 1400 ساعت 21:28 ارسال شده توسط مرتضی کریمی (باگنامه)

    سلام. من توی آموزش تا یک رقم اعشار ورودی گرفتم چون زیاد نمی‌خواستم کشش بدم و فقط میخواستم منظورم رو برسونم، وگرنه شما بیشتر از یک دهم اعشار هم می تونین به صورت float ورودی بگیرین. اعداد اعشاری یا float هم در واقع یک نوع داده‌ یا data type توی پایتون هست... درست مثل رشته‌ها یا اعداد صحیح که اونا هم یکی از انواع داده‌ها توی پایتون هستن :)

  • پیوند نظر پارسا امانی دوشنبه, 12 مهر 1400 ساعت 20:00 ارسال شده توسط پارسا امانی

    سلام مهندس خوب هستی ایشالا؟ ممنونم بابت توضیحاتت به خاطر جبر بولی
    من یک سوال دیگه از شما داشتم مهندس کریمی ممنون میشم پاسخ بدید
    من داشتم قسمت چهارم آموزش پایتون شما رو نگاه میکردم که داشتید درباره این که چطوری غیر از str
    input بگیریم که همینجا یک سوال پیش اومد درباره float شما وقتی خواستید که به صورت float خروجی بگیرید عددتون فقط با دقت دهم اعشار می‌گرفت فقط میخواستم بپرسم اگر بخواهیم با دقت اعشاری بیشتری خروجی بگیریم باید چیکار کنیم ؟ بعدش راستی در ضمن float از چه نوع چیزی هست ؟ از نوع متغیر هستش یا از نوع مقدار ؟؟ خیلی خیلی ممنونم

  • پیوند نظر مرتضی کریمی (باگنامه) دوشنبه, 12 مهر 1400 ساعت 12:24 ارسال شده توسط مرتضی کریمی (باگنامه)

    سلام. توی ریاضیات، مبحثی به اسم جبر بولی وجود داره که شامل جمع بولی (یا همون جمع بولین‌ها) هم میشه که می تونین راجب جبر بولی یا جمع بولی توی اینترنت سرچ کنید و اطلاعات به دست بیارین. اما به طور خلاصه بخوام بگم، توی بولین‌ها فقط با اعداد ۰ و ۱ سر و کار داریم و به همین خاطر، بقیه اعداد (مثل اعداد ۲ و ۳ و...) رو کاری باهاشون نداریم. حالا با توجه به این موضوع که فقط ۰ و ۱ داریم، توی حالت‌های زیر می‌تونیم دو تا بولین رو با همدیگه جمع کنیم:
    ۰ = ۰ + ۰
    ۱ = ۰ + ۱
    ۱ = ۱ + ۰
    ۱ = ۱ + ۱

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

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

  • پیوند نظر پارسا امانی دوشنبه, 12 مهر 1400 ساعت 09:44 ارسال شده توسط پارسا امانی

    سلام مهندس کریمی ببخشید من یک سوال داشتم من در پایتون بولین های True و False رو باهم از روی کنجکاوی جمع کردم و بعلاه همدیگه شون کردم ولی همیشه جواب عدد 1 میشد خب این دلیل خاصی داره مهندس؟؟؟؟؟ در ضمن از آموزش های عالیتون ممنونم مهندس !!!!!!!!!!!!!!!!!!

  • پیوند نظر پارسا امانی دوشنبه, 12 مهر 1400 ساعت 09:39 ارسال شده توسط پارسا امانی

    سلام ببخشید من یک سوال داشتم اونم اینه که من همینطوری دو تا بولین True و False رو با هم در پایتون جمع کردم و بعلاوه همدیگه کردمشون ولی بعدش همش جوابش عدد 1 میشد خب علتش چیه مهندس ؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟

  • پیوند نظر مرتضی کریمی (باگنامه) سه شنبه, 06 مهر 1400 ساعت 16:12 ارسال شده توسط مرتضی کریمی (باگنامه)

    سلام. دوست عزیز، توی این دوره فقط پایتون تدریس میشه، نه هک و امنیت و چیزای دیگه!!! اینکه دوره چندتا قسمت میشه یا کی تموم میشه و... هم هنوز معلوم نیست، چون همچنان در حال ضبط و ادامه پیدا کردنه :)

  • پیوند نظر mohammad سه شنبه, 06 مهر 1400 ساعت 14:06 ارسال شده توسط mohammad

    سلام، ببخشید خواستم ببینم میشه با این دوره سیستمی هک کرد؟
    و اینکه قسمت اخر این دوره چه زمانی میاد؟ و تا چند قسمت هستش؟
    لطفا جواب بدید با تشکر

  • پیوند نظر مرتضی کریمی (باگنامه) سه شنبه, 06 مهر 1400 ساعت 13:36 ارسال شده توسط مرتضی کریمی (باگنامه)

    سلام. توی این دوره فقط برنامه‌نویسی با پایتون تدریس میشه، نه بیشتر! این رو توی کامنت‌ها، ویدیوها و همچنین توضیحات همین صفحه هم گفتم :)

  • پیوند نظر saeeeeed سه شنبه, 06 مهر 1400 ساعت 13:31 ارسال شده توسط saeeeeed

    سلام
    ببخشید با این دوره میشه تست نفوذ هم انجام داد؟
    لطفا جواب بدید.

  • پیوند نظر سیاوش مروتی پنج شنبه, 25 شهریور 1400 ساعت 01:00 ارسال شده توسط سیاوش مروتی

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

  • پیوند نظر مرتضی کریمی (باگنامه) چهارشنبه, 17 شهریور 1400 ساعت 20:14 ارسال شده توسط مرتضی کریمی (باگنامه)

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

  • پیوند نظر فاطمه درویشی چهارشنبه, 17 شهریور 1400 ساعت 18:27 ارسال شده توسط فاطمه درویشی

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

  • پیوند نظر مرتضی کریمی (باگنامه) دوشنبه, 15 شهریور 1400 ساعت 06:20 ارسال شده توسط مرتضی کریمی (باگنامه)

    سلام. توی پایتون با ابزارهای BeeWare و Kivy میشه برای آیفون و موبایل‌های اندرویدی برنامه ساخت. البته از زبان برنامه‌نویسی سوئیفت هم میشه برای ساخت برنامه‌های آیفون استفاده کرد که خود اپل اون رو ساخته و به نظرم برای برنامه‌نویسی محصولات اپل مثل آیفون، مک‌بوک یا اپل واچ، بهتره که از این زبان استفاده کنین.
    همچنین من آیفون ندارم و برای اینکه بفهمین چطوری به کامپیوتر وصلش کنین، بهتره که توی گوگل سرچ کنین :)
    البته به عنوان یه راه حل جایگزین، می‌تونین فایل‌هاتون رو داخل سایت‌های آپلود، تلگرام یا آی‌کلود (iCloud) آپلود کرده و بعد با آیفون دانلودشون کنین.