Kodax

المتغيرات والأنواع — أساسيات Python

المتغيرات وأنواع البيانات

البرامج تحتاج أن تتذكر معلومات: اسم المستخدم، سعر منتج، عدد المحاولات. المتغير هو اسم نربطه بقيمة حتى نستخدمها لاحقاً.

name = "سارة"
age = 22

علامة = هنا تعني إسناد (ضع القيمة في المتغير)، وليست "يساوي" الرياضية. يمكنك تغيير قيمة المتغير في أي وقت:

score = 10
score = score + 5   # القيمة الجديدة 15

قواعد تسمية المتغيرات

- يبدأ بحرف أو _، ولا يبدأ برقم: user1 صحيح، 1user خطأ.

- لا يحتوي مسافات: استخدم _ مثل total_price (أسلوب snake_case المعتمد في Python).

- حساس لحالة الأحرف: Age و age متغيران مختلفان.

- اختر أسماء واضحة: price أفضل من p.

الأنواع الأساسية

| النوع | المعنى | مثال |

|---|---|---|

| int | عدد صحيح | 42, -7 |

| float | عدد عشري | 3.14, -0.5 |

| str | نص | "مرحباً" |

| bool | منطقي | True, False |

Python تعرف النوع تلقائياً من القيمة (كتابة ديناميكية)، ويمكنك معرفته بـ type():

print(type(42))       # <class 'int'>
print(type("42"))     # <class 'str'>

لاحظ أن 42 و "42" مختلفان: الأول رقم يمكن جمعه، والثاني نص.

التحويل بين الأنواع

int("100")      # 100
float("2.5")    # 2.5
str(25)         # "25"
int(3.9)        # 3  (يحذف الجزء العشري ولا يقرّب)

التحويل يفشل إذا كانت القيمة غير مناسبة: int("abc") يعطي ValueError.

خطأ شائع

age = 25
print("عمري " + age)        # TypeError: لا يمكن جمع نص مع رقم
print("عمري " + str(age))   # صحيح
print("عمري", age)          # صحيح أيضاً

تمرين

أنشئ متغيرات لاسم منتج وسعره (float) وكميته (int)، ثم اطبع إجمالي السعر، واطبع نوع كل متغير.

# الأعداد الصحيحة (int)
age = 25
year = 2024
negative = -10
print(type(age))  # <class 'int'>

# الأعداد العشرية (float)
price = 99.99
pi = 3.14159
temperature = -5.5
print(type(price))  # <class 'float'>

# النصوص (str)
name = "أحمد"
message = 'مرحباً بك'
long_text = """
هذا نص
متعدد الأسطر
"""
print(type(name))  # <class 'str'>

# المنطقي (bool)
is_student = True
is_graduated = False
print(type(is_student))  # <class 'bool'>

# تحويل الأنواع
num_str = "100"
num_int = int(num_str)    # تحويل لـ int
num_float = float(num_str) # تحويل لـ float

age = 25
age_str = str(age)  # تحويل لـ str
اختبر فهمك