سطح مقدماتی (Beginner Level)
در این بخش با مفهوم پایه متغیرها به عنوان ظروفی برای ذخیره دادهها آشنا میشویم و یاد میگیریم چگونه انواع مختلف داده را در پایتون تعریف کنیم.
۱. متغیر چیست؟
متغیر (Variable) در سادهترین تعریف، نامی است که به یک مقدار داده میشود تا بتوانیم در طول برنامه دوباره از آن استفاده کنیم. برخلاف بسیاری از زبانهای برنامهنویسی دیگر، در پایتون نیازی به تعریف نوع متغیر از قبل نیست (Dynamic Typing).
برای ساخت متغیر از علامت = استفاده میکنیم.
# این یک قطعه کد برای نشان دادن ساختار کلی است (قابل اجرا نیست چون context ندارد)
variable_name = value
۲. انواع دادههای اصلی (Primitive Data Types)
پایتون دارای چند نوع داده داخلی مهم است که باید حتما بشناسید:
- اعداد صحیح (Integers): اعداد بدون اعشار (مثل
10,-5). - اعداد اعشاری (Floats): اعداد دارای ممیز (مثل
3.14,2.0). - رشتهها (Strings): متنها که داخل کوتیشن قرار میگیرند (مثل
"Hello"). - بولی (Booleans): مقادیر منطقی که فقط
TrueیاFalseهستند.
۳. بررسی نوع داده با type()
برای اینکه بفهمیم یک متغیر چه نوع دادهای را نگه میدارد، از تابع type() استفاده میکنیم.
۴. تغییر پویای نوع (Dynamic Typing)
در پایتون، شما میتوانید نوع یک متغیر را تغییر دهید. یعنی متغیری که عدد بوده، میتواند در خط بعد رشته شود.
سطح پیشرفته (Professional Level)
در این بخش به عمق نحوه مدیریت متغیرها در حافظه، اصول نامگذاری استاندارد (PEP 8) و Type Hinting میپردازیم.
۱. مدیریت حافظه: متغیرها به عنوان مرجع (References)
در پایتون، متغیرها "جعبه" نیستند که مقدار را در خود نگه دارند؛ بلکه "برچسب" (Label) یا ارجاعی به یک مکان در حافظه هستند (Object Reference).
وقتی مینویسیم a = 10 و سپس b = a، پایتون مقدار ۱۰ را کپی نمیکند، بلکه b را به همان آدرس حافظهای که a به آن اشاره دارد، متصل میکند. برای بررسی آدرس حافظه از id() استفاده میکنیم.
۲. قوانین نامگذاری (PEP 8 Standard)
برای نوشتن کد حرفهای، باید استانداردهای PEP 8 را رعایت کنید:
- از
snake_caseبرای نام متغیرها استفاده کنید (حروف کوچک و آندرلاین). - نامها باید توصیفکننده باشند (
user_ageبهتر ازxاست). - ثابتها (Consts) با حروف بزرگ نوشته میشوند.
# بد: نامگذاری مبهم و غیر استاندارد
x = "Ali"
MyVariable = 12
# خوب: نامگذاری استاندارد پایتون
first_name = "Ali"
MAX_CONNECTIONS = 100 # ثابت
۳. قابلیت Type Hinting (نسخههای جدید پایتون)
در پروژههای بزرگ، مشخص نبودن نوع داده میتواند باعث باگ شود. پایتون ۳.۵ به بعد قابلیت Type Hinting را اضافه کرد. این ویژگی اجباری نیست و مفسر آن را نادیده میگیرد، اما برای مستندسازی و ابزارهای چککننده کد عالی است.
# تعریف تابع با مشخص کردن نوع ورودی و خروجی (Static Snippet)
def calculate_area(radius: float) -> float:
return 3.14 * radius * radius
۴. مقداردهی چندگانه (Multiple Assignment & Unpacking)
پایتون اجازه میدهد چندین متغیر را در یک خط مقداردهی کنید. این تکنیک برای جابجایی (Swap) مقادیر دو متغیر بدون متغیر کمکی بسیار محبوب است.