آموزش برنامه نویسی پایتون - Multithreading، OOP، NumPy و Pandas

Python Programming - Multithreading, OOP, NumPy and Pandas

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
توضیحات دوره: زبان برنامه نویسی پایتون را بیاموزید - مبانی، Multithreading، برنامه نویسی موازی، OOP و NumPy، Matplotlib و Pandas درک اساسی از زبان برنامه نویسی پایتون به دست آورید. کسب پیشینه و مهارت های پایتون برای درخواست مشاغل برنامه نویسی پایتون درک مدیریت حافظه Python Understand NumPy و Pandas Understand Matplotlib درک خوبی از چند رشته ای، برنامه نویسی همزمان و برنامه نویسی موازی می تواند به موضوعات پیشرفته تری مانند الگوریتم ها یا یادگیری ماشینی بروید درک کنید. پایگاه داده و مدیریت پایگاه داده با پایتون پیش نیازها: رایانه کار و اینترنت - دستورالعمل های راه اندازی و نصب برای هر پلتفرم (مک و ویندوز) گنجانده شده است.

به ما بپیوندید و یک برنامه نویس پایتون شوید، یکی از مهمترین مهارت های سال 2022 را بیاموزید!

این دوره در مورد مبانی اساسی زبان برنامه نویسی پایتون است. چه قبلاً هرگز برنامه نویسی نکرده باشید، چه از قبل سینتکس اولیه را بلد باشید یا بخواهید در مورد ویژگی های پیشرفته پایتون بیاموزید، این دوره برای شما مناسب است! شما می توانید در مورد سخت ترین موضوعات در برنامه نویسی یاد بگیرید: مدیریت حافظه، چند رشته ای و برنامه نویسی شی گرا. بنابراین موضوعاتی که در مورد آنها خواهید آموخت:

1.) مبانی پایتون

  • نصب پایتون و محیط توسعه یکپارچه (IDE)

  • عملیات اساسی

  • عبارات شرطی

  • حلقه ها

2.) توابع

  • توابع در پایتون چیست

  • آگومانهای موضعی و کلیدواژه

  • بازگشت و بازده

  • بازگشت

3.) ساختارهای داده

  • چگونه عملکرد ساختارهای داده را اندازه گیری کنیم؟

  • معرفی ساختارهای داده

  • فهرست ها

  • جلوها

  • لغت نامه ها و مجموعه ها

4.) برنامه نویسی شی گرا (OOP)

  • مزایا و معایب OOP چیست؟

  • کلاس ها و اشیاء

  • سازندگان

  • ارث

  • چند شکلی

5.) مدیریت حافظه

  • پشته حافظه و حافظه پشته

  • مدیریت حافظه در پایتون

6.) مدیریت فایل ها (I/O)

  • خواندن فایل‌ها و نوشتن فایل‌ها

7.) استثناها

  • استثناها و خطاها

  • نحوه برخورد با استثنا

  • try-except-finally blocks

8.) برنامه نویسی چند رشته ای و همزمان

  • رشته ها و فرآیندها چیست؟

  • همگام سازی

  • قفل می کند

  • بن بست ها و بن بست ها

  • ارتباطات بین رشته ای

9.) برنامه نویسی موازی

  • برنامه نویسی چند رشته ای و موازی

  • قفل مترجم جهانی (GIL) چیست؟

10.) عبارات لامبدا

  • برنامه نویسی تابعی چیست؟

  • چرا عبارات لامبدا را یاد بگیریم؟

  • توابع ناشناس

  • فیلتر

  • نقشه

  • کاهش

11.) NumPy

  • ساختارهای داده آرایه واقعی در پایتون

  • مقایسه لیست ها و آرایه ها

  • اصول NumPy

12.) Matplotlib

  • نحوه ایجاد نمودار در پایتون

  • نمودارها، نمودارهای خطی و نمودارهای پراکندگی

13.) پانداها

  • چرا در علوم داده به پانداها نیاز داریم؟

  • سریال

  • DataFrames

  • عملکرد را اعمال کنید (در مقایسه با حلقه ها)

  • بردارسازی

14.) مدیریت پایگاه داده در پایتون

  • پایگاه های اطلاعاتی چیست و چرا به آنها نیاز داریم؟

  • MySQL و SQL

  • عبارات SQL در پایتون

دسترسی مادام العمر به بیش از 110 سخنرانی به علاوه اسلایدها و کدهای منبع برای سخنرانی ها را خواهید داشت!

این دوره با 30 روز ضمانت بازگشت وجه ارائه می شود! اگر به هیچ وجه راضی نیستید، پول خود را پس خواهید گرفت.

پس منتظر چه چیزی هستید؟ Python را به گونه ای یاد بگیرید که باعث پیشرفت شغلی و افزایش دانش شما شود، همه به روشی سرگرم کننده و کاربردی!


سرفصل ها و درس ها

معرفی Introduction

  • معرفی Introduction

چرا زبان برنامه نویسی پایتون را یاد بگیریم؟ Why to Learn Python Programming Language?

  • چرا باید پایتون یاد گرفت؟ Why to learn Python?

راه اندازی محیط Environment Setup

  • نصب پایتون Installing Python

  • در حال نصب PyCharm Installing PyCharm

### اصول پایتون ### ### PYTHON FUNDAMENTALS ###

  • اصول پایتون Python fundamentals

مبانی پایتون Python Basics

  • اولین قدم ها در پایتون First steps in Python

  • انواع داده های اساسی چیست؟ What are the basic data types?

  • بولین ها Booleans

  • رشته های Strings

  • برش رشته String slicing

  • ریخته گری نوع Type casting

  • اپراتورها Operators

  • اظهارات مشروط Conditional statements

  • چگونه از شرایط متعدد استفاده کنیم؟ How to use multiple conditions?

  • تمرین - عبارات شرطی Exercise - conditional statements

  • راه حل - عبارات شرطی Solution - conditional statements

  • عملگرهای منطقی Logical operators

  • حلقه ها - برای حلقه Loops - for loop

  • حلقه ها - حلقه while Loops - while loop

  • تمرین: محاسبه میانگین Exercise: calculating the average

  • راه حل: محاسبه میانگین Solution: calculating the average

  • حلقه های تو در تو چیست؟ What are nested loops?

  • شمردن Enumerate

  • بشکن و ادامه بده Break and continue

  • محاسبه اعداد فیبوناچی Calculating Fibonacci-numbers

  • تمرین: اعداد فیبوناچی Exercise: Fibonacci-numbers

  • راه حل: اعداد فیبوناچی Solution: Fibonacci-numbers

  • آزمون پایه پایتون Python Basics Quiz

توابع در پایتون Functions in Python

  • توابع چیست؟ What are functions?

  • تعریف توابع Defining functions

  • آرگومان های موقعیتی و آرگومان های کلیدواژه Positional arguments and keyword arguments

  • برگرداندن مقادیر Returning values

  • برگرداندن مقادیر متعدد Returning multiple values

  • تمرین کدگذاری توابع Functions coding exercise

  • راه حل - توابع Solution - functions

  • عملگر بازده Yield operator

  • متغیرهای محلی و جهانی Local and global variables

  • مرتبط ترین توابع داخلی کدامند؟ What are the most relevant built-in functions?

  • بازگشت چیست؟ What is recursion?

  • تمرین کدگذاری بازگشتی Recursion coding exercise

  • راه حل - بازگشت Solution - recursion

  • متغیرهای محلی در مقابل متغیرهای جهانی Local vs global variables

  • تابع __main__ The __main__ function

  • آزمون توابع Functions Quiz

ساختارهای داده در پایتون Data Structures in Python

  • چگونه زمان اجرای الگوریتم ها را اندازه گیری کنیم؟ How to measure the running time of algorithms?

  • معرفی ساختارهای داده Data structures introduction

  • ساختارهای داده آرایه چیست I What are array data structures I

  • ساختارهای داده آرایه چیست II What are array data structures II

  • لیست ها در پایتون Lists in Python

  • لیست در پایتون - عملیات پیشرفته Lists in Python - advanced operations

  • لیست ها در پایتون - درک لیست Lists in Python - list comprehension

  • (!!!) لیست ها و آرایه های پایتون (!!!) Python lists and arrays

  • تمرین: درک فهرست Exercise: list comprehension

  • راه حل - درک لیست Solution - list comprehension

  • اندازه گیری زمان اجرای لیست ها Measuring running time of lists

  • تاپل ها چیست؟ What are tuples?

  • تغییرپذیری و تغییرناپذیری Mutability and immutability

  • ساختارهای داده لیست پیوندی چیست؟ What are linked list data structures?

  • پیاده سازی لیست پیوندی دوگانه در پایتون Doubly linked list implementation in Python

  • هش و پیچیدگی زمان اجرا O(1). Hashing and O(1) running time complexity

  • فرهنگ لغت در پایتون Dictionaries in Python

  • مجموعه در پایتون Sets in Python

  • تمرین: ساخت فرهنگ لغت Exercise: constructing dictionaries

  • راه حل: ساخت فرهنگ لغت Solution: constructing dictionaries

  • مرتب سازی Sorting

  • آزمون ساختارهای داده Data Structures Quiz

برنامه نویسی شی گرا (OOP) Object Oriented Programming (OOP)

  • برنامه نویسی شی گرا (OOP) چیست؟ What is object oriented programming (OOP)?

  • اصول کلاس و اشیاء Class and objects basics

  • با استفاده از سازنده Using the constructor

  • متغیرهای کلاس و متغیرهای نمونه Class variables and instance variables

  • تمرین: ساخت کلاس Exercise: constructing classes

  • راه حل: ساخت کلاس ها Solution: constructing classes

  • متغیرهای خصوصی و مخفی کردن نام Private variables and name mangling

  • وراثت در OOP چیست؟ What is inheritance in OOP?

  • کلمه کلیدی فوق العاده The super keyword

  • لغو تابع (روش). Function (method) override

  • پلی مورفیسم چیست؟ What is polymorphism?

  • چند شکلی و انتزاع مثال Polymorphism and abstraction example

  • تمرین: انتزاع Exercise: abstraction

  • راه حل: انتزاع Solution: abstraction

  • ماژول ها Modules

  • تابع __str__ The __str__ function

  • مقایسه اشیاء - توابع برتر Comparing objects - overriding functions

  • آزمون برنامه نویسی شی گرا Object Oriented Programming Quiz

مدیریت حافظه Memory Management

  • حافظه پشته و پشته چیست؟ What are stack and heap memory?

  • پشته حافظه و شبیه سازی حافظه پشته Stack memory and heap memory simulation

  • جمع آوری زباله و شمارش مراجع Garbage collection and reference counting

  • بررسی مجدد انواع متغیرها Revisiting the types of variables

  • عملگرهای == و is The == and the is operators

  • با مرجع و ارزش تماس بگیرید Call by reference and value

  • آزمون مدیریت حافظه Memory Management Quiz

مدیریت فایل ها (I/O) Handling Files (I/O)

  • خواندن و پردازش فایل ها Reading and processing files

  • پردازش فایل ها - مثال شماره 1 Processing files - example #1

  • پردازش فایل ها - مثال شماره 2 Processing files - example #2

  • فایل های جدید ایجاد کنید و محتوا را به روز کنید Create new files and update content

  • تمرین: رسیدگی به فایل ها Exercise: handling files

  • راه حل: مدیریت فایل ها Solution: handling files

استثناها و خطاها Exceptions and Errors

  • استثناها و خطاها چیست؟ What are exceptions and errors?

  • رسیدگی به استثنائات Handling exceptions

  • رسیدگی به استثنائات II Handling exceptions II

  • استثناها را مطرح کنید Raise exceptions

  • تعریف استثناهای خودمان Defining our own exceptions

  • فهرست استثنائات List of exceptions

  • استفاده از کلمه کلیدی with Using the with keyword

  • آزمون استثناها و خطاها Exceptions and Errors Quiz

### محاسبات چند نخی و موازی ### ### MULTITHREADING & PARALLEL COMPUTING ###

  • محاسبات چند رشته ای و موازی Multithreading and parallel computing

نظریه چند رشته ای Multithreading Theory

  • فرآیندها و رشته ها چیست؟ What are processes and threads?

  • الگوریتم برش زمانی The time-slicing algorithm

  • مزایای چند رشته ای Benefits of multithreading

  • جنبه منفی Multithreading Downside of multithreading

  • آزمون تئوری چند رشته ای Multithreading Theory Quiz

پیاده سازی های چند رشته ای Multithreading Implementations

  • ایجاد و شروع موضوعات Creating and starting threads

  • ایجاد موضوعات با وراثت Creating threads with inheritance

  • به هم پیوستن موضوعات Joining threads

  • کنترل پارامترها Handling parameters

  • موضوعات و فرآیندها بازبینی شدند Threads and processes revisited

  • تمرین: چند رشته ای Exercise: multithreading

  • راه حل: چند رشته ای Solution: multithreading

  • نخ های دیمون Daemon threads

  • مدیریت حافظه رشته ها Memory management of threads

  • چرا از همگام سازی استفاده کنیم؟ Why to use synchronization?

  • همگام سازی با قفل Synchronization with locks

  • قفل های ورود مجدد چیست؟ What are re-entrant locks?

  • با استفاده از RLocks Using RLocks

  • بن بست و زنده چیست؟ What are deadlocks and livelocks?

  • سمافورها چیست؟ What are semaphores?

  • نمونه سمافورها Semaphores example

  • ارتباطات بین رشته ای - اشیاء رویداد Inter-thread communication - event objects

  • استخرهای نخ چیست؟ What are thread pools?

  • مجموعه موضوعات و مقادیر بازگشتی Thread pools and return values

  • تمرین: استخرهای نخ Exercise: thread pools

  • راه حل: استخرهای نخ Solution: thread pools

  • آزمون اجرای چند رشته ای Multithreading Implementation Quiz

مثال چند رشته ای - مسئله فیلسوفان غذاخوری Multithreading Example - Dining Philosophers Problem

  • مشکل فلاسفه ناهار خوری I - مشکل Dining philosophers problem I - the problem

  • مسائل فیلسوفان ناهار خوری II - ثابت ها Dining philosophers problems II - constants

  • مشکلات فیلسوفان ناهار خوری III - چاپستیک Dining philosophers problems III - chopstick

  • مشکلات فیلسوفان ناهار خوری چهارم - فیلسوف Dining philosophers problems IV - philosopher

  • مشکلات فیلسوفان ناهار خوری V - اجرای شبیه سازی Dining philosophers problems V - running the simulation

محاسبات موازی Parallel Computing

  • چند رشته ای در مقابل برنامه نویسی موازی Multithreading vs parallel programming

  • قفل مترجم جهانی (GIL) چیست؟ What is the Global Interpreter Lock (GIL)?

  • آزمون محاسبات موازی Parallel Computing Quiz

### عبارات لامبدا ### ### LAMBDA EXPRESSIONS ###

  • برنامه نویسی تابعی چیست؟ What is functional programming?

  • اصول عبارات لامبدا Lambda expressions basics

  • آرگومان های موقعیتی و آرگومان های کلیدواژه Positional arguments and keyword arguments

  • توابع ناشناس Anonymous functions

  • عبارت تابع فراخوانی فوری (IIFE) Immediately invoked function expression (IIFE)

  • عملکرد لامبدا در توابع استاندارد Lambda functions within standard functions

  • فیلتر کنید Filter

  • نقشه Map

  • كاهش دادن Reduce

  • تمرین: عبارات لامبدا Exercise: lambda expressions

  • راه حل: عبارات لامبدا Solution: lambda expressions

  • آزمون عبارات لامبدا Lambda Expressions Quiz

### کتابخانه های مهم ### ### IMPORTANT LIBRARIES ###

  • کتابخانه های مهم مرتبط با پایتون Python related important libraries

NumPy - کتابخانه شماره 1 پایتون NumPy - Python's #1 Library

  • مزیت کلیدی NumPy چیست؟ What is the key advantage of NumPy?

  • ایجاد و به روز رسانی آرایه ها Creating and updating arrays

  • ابعاد آرایه ها Dimension of arrays

  • شاخص ها و برش Indexes and slicing

  • انواع Types

  • تغییر شکل دهید Reshape

  • تمرین: مشکل تغییر شکل Exercise: reshape problem

  • راه حل: مشکل تغییر شکل Solution: reshape problem

  • انباشتن و ادغام آرایه ها Stacking and merging arrays

  • فیلتر کنید Filter

  • مقایسه زمان اجرا: آرایه ها و لیست ها Running time comparison: arrays and lists

  • امتحان NumPy NumPy Quiz

Matplotlib Matplotlib

  • Matplotlib چیست؟ What is Matplotlib?

  • ایجاد اولین طرح ها Creating the first plots

  • برچسب ها و عنوان Labels and title

  • نشانگرها و خطوط Markers and lines

  • تمرین طرح چند خطی Multiple line plot exercise

  • راه حل طرح چند خطی Multiple line plot solution

  • توری Grid

  • طرح های فرعی Subplots

  • توطئه های پراکنده Scatter plots

  • تمرین نمودارهای پراکنده Scatter plots exercise

  • راه حل نمودارهای پراکندگی Scatter plots solution

  • میله ها Bars

  • نمودار دایره ای Pie chart

پانداها Pandas

  • پاندا چیست؟ What is Pandas?

  • اولین قدم ها First steps

  • سلسله Series

  • DataFrames DataFrames

  • عملیات DataFrame DataFrame operations

  • مقایسه سرعت - عملیات DataFrame Speed comparison - DataFrame operations

  • خواندن CSV و فایل های متنی Reading CSV and text files

  • عملیات Operations

  • فیلتر کردن داده ها Data filtering

  • با استفاده از تابع application() Using the apply() function

  • مقایسه سرعت - حلقه ها و اعمال () Speed comparison - loops and apply()

  • تمرین عملکردی را اعمال کنید Apply function exercise

  • راه حل تابع را اعمال کنید Apply function solution

  • برداری چیست؟ What is vectorization?

  • نمونه برداری I Vectorization example I

  • نمونه برداری بردار II Vectorization example II

  • تمرین برداری Vectorization exercise

  • راه حل برداری Vectorization solution

  • مسابقه پانداها Pandas Quiz

### مبانی پایگاه داده ### ### DATABASE FUNDAMENTALS ###

  • حافظه داخلی و خارجی Internal and external memory

  • سیستم های مدیریت پایگاه داده و زبان های پایگاه داده Database management systems and database languages

  • نصب MySQL Installing MySQL

  • گام های اول با پایگاه داده First steps with databases

  • ایجاد جداول پایگاه داده Creating database tables

  • عملیات درج Insertion operation

  • عملیات به روز رسانی Update operation

  • عملیات را حذف کنید Remove operation

  • آزمون پایگاه داده Database Quiz

مطالب دوره (دانلود) COURSE MATERIALS (DOWNLOADS)

  • دانلود اسلایدها Download slides

  • اسلایدها را به صورت PDF دانلود کنید Download slides as PDF

  • کد منبع را دانلود کنید Download source code

نمایش نظرات

نظری ارسال نشده است.

آموزش برنامه نویسی پایتون - Multithreading، OOP، NumPy و Pandas
خرید اشتراک و دانلود خرید تکی و دانلود | 160,000 تومان (5 روز مهلت دانلود) زمان تقریبی آماده سازی لینک دانلود این دوره آموزشی حدود 5 تا 24 ساعت می باشد.
جزییات دوره
13 hours
195
Udemy (یودمی) udemy-small
28 بهمن 1401 (آخرین آپدیت رو دریافت می‌کنید، حتی اگر این تاریخ بروز نباشد.)
12,446
4.3 از 5
دارد
دارد
دارد

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Holczer Balazs Holczer Balazs

مهندس نرم افزار

Udemy (یودمی)

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

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