Kahibaro
Discord Login Register

فصل ۳: متغیرها و انواع داده

مقدمهٔ فصل

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

در پایان این فصل می‌توانید:

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

۱. متغیر چیست؟

در ریاضی، وقتی می‌نویسیم $x = 5$ یعنی نمادی به نام $x$ داریم که مقدارش ۵ است. در برنامه‌نویسی هم متغیر تقریبا همین نقش را دارد: نامی که به یک مقدار نسبت داده می‌شود تا بعدا بتوانیم آن را استفاده یا تغییر دهیم.

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

age = 20
name = "Ali"
height = 1.75

در این مثال:

۲. ایجاد متغیرها

۲.۱. انتساب (Assign) مقدار به متغیر

برای ساختن یک متغیر در پایتون، کافی است:

ساختار کلی:

$$
\text{variable\_name} = \text{value}
$$

مثال‌ها:

x = 10
y = 3.14
message = "سلام"
is_student = True

پایتون نوع داده را خودش حدس می‌زند (چون یک زبان "نوع‌دهی پویا" است). یعنی لازم نیست بگویید int x یا string name؛ پایتون از روی مقدار، نوع را تشخیص می‌دهد.

۲.۲. قواعد نام‌گذاری متغیرها

نام متغیر باید از قوانین خاصی پیروی کند:

مثال نام‌های درست:

age
user_name
total_price
a2
_x

مثال نام‌های نادرست (خطا ایجاد می‌کنند):

2age       # شروع با عدد
user-name  # استفاده از -
user name  # استفاده از فاصله

۲.۳. نام‌گذاری خوانا و معنادار

کد شما را خودتان و دیگران قرار است بخوانند. بهتر است نام متغیر:

مثال‌های پیشنهادی:

user_age = 25
student_name = "Sara"
item_count = 10
max_score = 100

۲.۴. تغییر مقدار یک متغیر

متغیرها «متغیر» هستند! یعنی مقدارشان می‌تواند عوض شود:

counter = 0
counter = 1
counter = 2

در نهایت، مقدار counter برابر با 2 خواهد بود؛ مقادیر قبلی روی هم نوشته (overwrite) می‌شوند.

۲.۵. چند انتساب در یک خط (معرفی کوتاه)

گاهی می‌توانید چند متغیر را در یک خط مقداردهی کنید:

x, y = 10, 20

در این دوره برای خوانایی، معمولا هر انتساب را در یک خط جداگانه می‌نویسیم؛ اما دانستن این امکان مفید است.

۳. اعداد در پایتون (`int` و `float`)

پایتون برای نمایش اعداد، چند نوع داده دارد. در این فصل، با دو نوع اصلی آشنا می‌شویم:

۳.۱. `int` – عدد صحیح

int مخفف integer است و برای نمایش اعداد بدون قسمت اعشاری استفاده می‌شود؛ مثل:

مثال:

age = 30          # int
year = 2025       # int
temperature = -2  # int

پایتون خودش تشخیص می‌دهد این‌ها int هستند.

۳.۲. `float` – عدد اعشاری

float برای نمایش اعدادی است که بخش اعشاری دارند (یا ممکن است داشته باشند)، مثل:

در پایتون، جداکنندهٔ اعشار نقطه . است (نه ویرگول). مثال:

pi = 3.14        # float
height = 1.75    # float
score = 20.0     # float (حتی اگر اعشارش 0 باشد، باز هم float است)

اگر بنویسید 2 نوعش int است؛ اگر 2.0 بنویسید، float است.

۳.۳. تبدیل خودکار بین `int` و `float` (نگاه اولیه)

در عملیات حسابی، اگر int و float را با هم ترکیب کنید، نتیجه معمولا float می‌شود. جزئیات عملیات حسابی در فصل «عملیات پایه» می‌آید؛ اینجا فقط یک نگاه اولیه:

a = 2      # int
b = 3.0    # float
c = a + b  # نتیجه: 5.0 (float)

۴. متن در پایتون (`str`)

هر نوع متن در پایتون با نوع دادهٔ str (مخفف string) نمایش داده می‌شود. رشته یعنی دنباله‌ای از کاراکترها (حروف، اعداد، فاصله، علامت‌ها و ...).

۴.۱. ساختن رشته

برای ساختن یک رشته:

مثال‌ها:

name = "Ali"
city = 'Tehran'
message = "سلام دنیا"

پایتون با هر دو نوع گیومه مشکلی ندارد؛ فقط مهم است که شروع و پایان آن‌ها یکسان باشد.

۴.۲. رشتهٔ خالی

گاهی لازم است یک رشتهٔ خالی داشته باشید (یعنی متنی که هیچ کاراکتری ندارد):

empty_text = ""

۴.۳. رشته‌های چندخطی (معرفی کوتاه)

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

long_text = """این یک متن
چند خطی است
در پایتون."""

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

۵. مقادیر بولی (`True` و `False`)

نوع دادهٔ بولی (Boolean) فقط دو مقدار ممکن دارد:

این نوع داده برای نمایش نتیجهٔ یک شرط یا پاسخ بله/خیر استفاده می‌شود؛ مثلا:

مثال‌ها:

is_student = True
has_paid = False

نکتهٔ مهم:

در فصل «شرط‌ها (if / else)» استفادهٔ اصلی این نوع را خواهید دید.

۶. بررسی نوع داده با `type()`

برای این‌که بدانید یک متغیر چه نوع داده‌ای دارد، از تابع آمادهٔ type() استفاده می‌کنیم.

ساختار:

$$
\text{type}(\text{value or variable})
$$

مثال:

x = 10
y = 3.5
name = "Ali"
is_student = True
print(type(x))
print(type(y))
print(type(name))
print(type(is_student))

خروجی چیزی شبیه این خواهد بود:

<class 'int'>
<class 'float'>
<class 'str'>
<class 'bool'>

از این تابع زیاد استفاده خواهیم کرد، مخصوصا وقتی تازه با انواع داده کار می‌کنید یا هنگام اشکال‌زدایی.

۷. تغییر نوع داده (تبدیل نوع – معرفی اولیه)

گاهی لازم است نوع داده را تبدیل کنید. به این کار می‌گویند type casting.

تابع‌های مهم تبدیل نوع (منصرفاً آشنایی اولیه، جزئیات در فصل‌های بعد):

مثال:

age_text = "20"
age_number = int(age_text)   # "20" (str) تبدیل می‌شود به 20 (int)
pi = 3.14
pi_text = str(pi)            # 3.14 (float) تبدیل می‌شود به "3.14" (str)

در فصل «ورودی و خروجی کاربر» بیشتر با تبدیل‌ها کار خواهیم کرد، چون ورودی کاربر همیشه به صورت str وارد می‌شود.

۸. متغیرها و حافظه (دید سادهٔ مفهومی)

برای درک بهتر متغیرها، تصویر ذهنی زیر مفید است:

  x = 5

پایتون در یک خانه از حافظه مقدار 5 را می‌گذارد و نام x را به آن خانه ربط می‌دهد.

  x = 10

حالا x به مقداری جدید (۱۰) اشاره می‌کند؛ انگار برچسب x را از روی مقدار قبلی برداشته و روی مقدار جدید چسبانده‌اید.

لازم نیست جزئیات داخلی حافظه را بدانید، اما این تصویر ذهنی کمک می‌کند بفهمید چرا تغییر مقدار یک متغیر قبلی، مقدار متغیرهای دیگر را عوض نمی‌کند (مگر این‌که به همان «خانه» اشاره کنند؛ این بحث در فصل‌های بعدی و در مورد لیست‌ها و اشیاء مهم‌تر می‌شود).

۹. نکات و اشتباهات رایج در کار با متغیرها و انواع داده

چند خطای متداول مبتدیان هنگام کار با متغیرها:

۹.۱. استفاده از نام متغیر قبل از تعریف

print(x)   # خطا: x هنوز تعریف نشده است
x = 10

باید همیشه قبل از استفاده، به متغیر مقدار بدهید:

x = 10
print(x)

۹.۲. نوشتن نام متغیر اشتباه (املای نادرست یا حروف کوچک/بزرگ متفاوت)

userName = "Ali"
print(username)   # خطا: username با userName فرق دارد

پایتون به حروف کوچک و بزرگ حساس است.

۹.۳. اشتباه در استفاده از گیومه‌ها برای رشته‌ها

name = Ali      # خطا: Ali باید در گیومه باشد
name = "Ali"    # درست

۹.۴. استفاده از نام‌های رزرو شده (کلمات کلیدی)

پایتون کلماتی دارد که برای خودش استفاده می‌کند؛ این‌ها را کلمهٔ کلیدی می‌گویند، مثلا: if, for, while, True, False, None و ...
نباید از این‌ها به‌عنوان نام متغیر استفاده کنید:

if = 10      # خطا
True = 5     # خطا

در فصل‌های بعدی با کلمات کلیدی متداول آشنا می‌شوید.

۱۰. جمع‌بندی فصل

در این فصل آموختید که:

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

Views: 9

Comments

Please login to add a comment.

Don't have an account? Register now!