توابع و برنامهنویسی ماژولار
این بخش شامل آموزشهای مربوط به توابع و برنامهنویسی ماژولار میباشد.
📋 فهرست مباحث
- تعریف توابع (Defining Functions)
- پارامترها و آرگومانها (Parameters vs Arguments)
- آرگومانهای موقعیتی (Positional Arguments)
- آرگومانهای کلیدی (Keyword Arguments)
- مقادیر پیشفرض برای پارامترها (Default Arguments)
- آرگومانهای دلخواه موقعیتی (*args)
- آرگومانهای دلخواه کلیدی (**kwargs)
- ترتیب آرگومانها در فراخوانی تابع
- بازگشت مقدار (Return Statement)
- توابع بدون بازگشت (None)
- توابع چندگانه بازگشتی
- متغیرهای محلی و سراسری (Local vs Global Scope)
- کلمه کلیدی global
- کلمه کلیدی nonlocal
- توابع تو در تو (Nested Functions)
- بستارها (Closures)
- دکوراتورها (Decorators) مقدماتی
- نوشتن دکوراتورهای سفارشی
- دکوراتورهای با پارامتر
- دکوراتورهای زنجیرهای (Chaining Decorators)
- توابع لامبدا (Lambda Functions)
- کاربرد لامبدا با توابع map و filter
- تابع map و نگاشت (Mapping)
- تابع filter و پالایش (Filtering)
- تابع reduce در ماژول functools
- توابع مرتبسازی بالا (Higher-Order Functions)
- تابع zip و ترکیب لیستها
- تابع enumerate و شمارش در حلقهها
- تابع all و any برای بررسی شرطها
- تابع sorted و پارامتر key
- تابع repr و str
- بازگشت (Recursion) و مفهوم آن
- محدودیت بازگشت و RecursionError
- مثالهای کاربردی بازگشت (فیبوناچی)
- مستندسازی توابع (Docstrings)
- انوتیشنهای نوع (Type Hints) مقدماتی
- انوتیشنهای پیشرفته (Union, Optional, List)
- ماژول typing برای انواع پیچیده
- تست کردن توابع (Unit Testing Basics)
- بهترین شیوهها در نوشتن توابع (Clean Code)