جاري تحميل المحتوى...
تحتاج البرامج إلى الاحتفاظ بالمعلومات حتى تتمكن من استخدامها لاحقًا. قد تكون هذه المعلومات اسم متعلم، أو عمرًا، أو طولًا، أو حالة منطقية توضح ما إذا كان المستخدم مبتدئًا. في Python نستخدم المتغيرات لإعطاء هذه القيم أسماء واضحة، بينما يحدد نوع البيانات طبيعة كل قيمة والطريقة المناسبة للتعامل معها.
بعد دراسة هذا الملخص، يُتوقع أن تستطيع:
المتغير اسم نستخدمه للإشارة إلى قيمة داخل البرنامج. يساعد الاسم الواضح على تذكر معنى القيمة واستخدامها في مواضع أخرى من الكود.
student_name = "سارة"
age = 15
height = 1.62
is_beginner = True
في المثال السابق:
student_name اسم متغير يشير إلى النص "سارة".age اسم متغير يشير إلى العدد الصحيح 15.height اسم متغير يشير إلى العدد العشري 1.62.is_beginner اسم متغير يشير إلى القيمة المنطقية True.تسمى عملية ربط اسم المتغير بقيمة عملية الإسناد. تستخدم Python علامة = لتنفيذ الإسناد.
age = 15
تقرأ هذه العبارة بمعنى: أسند القيمة 15 إلى المتغير age. لا تعني العلامة هنا سؤالًا عن المساواة، بل تعني تخزين القيمة تحت اسم محدد.
اسم المتغير ليس هو القيمة نفسها. في العبارة التالية:
student_name = "سارة"
student_name هو الاسم الذي نستخدمه داخل الكود."سارة" هي القيمة التي يشير إليها الاسم.وجود علامتي الاقتباس حول "سارة" يعني أن القيمة نص، أما اسم المتغير فلا يوضع عادةً بين علامتي اقتباس.
يمكن أن يشير المتغير إلى قيمة جديدة لاحقًا. تسمى هذه العملية إعادة الإسناد.
age = 15
age = 16
بعد تنفيذ السطر الثاني تصبح قيمة age هي 16. لا يحتاج البرنامج إلى إنشاء اسم جديد في كل مرة تتغير فيها القيمة.
يمكن كذلك أن يتغير نوع القيمة المرتبطة بالمتغير:
status = True
status = "مكتمل"
في السطر الأول يشير status إلى قيمة من نوع bool، ثم يشير في السطر الثاني إلى قيمة من نوع str. يكفي في هذا المستوى معرفة أن Python تسمح بإعادة إسناد قيمة من نوع مختلف، دون الدخول في تفاصيل الأنواع الديناميكية المتقدمة.
يجب أن يلتزم اسم المتغير بعدد من القواعد الأساسية:
_.class.age يختلف عن Age.student_name = "سارة"
age2 = 16
course_status = "بدأ"
is_beginner = True
2age = 16
student name = "سارة"
class = "Python"
الاسم الأول يبدأ برقم، والثاني يحتوي على مسافة، والثالث يستخدم كلمة محجوزة.
قد يكون الاسم القصير صالحًا، لكنه لا يكون دائمًا واضحًا. الاسم age أوضح من a عندما تمثل القيمة عمر المتعلم. تساعد الأسماء الواضحة على قراءة الكود ومراجعته.
| النوع | الاستخدام | مثال |
|---|---|---|
| int | الأعداد الصحيحة دون جزء عشري | 15 |
| float | الأعداد التي تحتوي على جزء عشري | 1.62 |
| str | النصوص والمحارف | "سارة" |
| bool | القيم المنطقية | True أو False |
| None | عدم وجود قيمة محددة حاليًا | None |
يستخدم int للأعداد الصحيحة التي لا تحتوي على جزء عشري.
age = 15
completed_lessons = 3
temperature = -2
القيم 15 و3 و-2 كلها من نوع int.
يستخدم float للأعداد التي تحتوي على جزء عشري.
height = 1.62
progress = 25.5
temperature = -2.5
وجود النقطة العشرية يجعل القيمة من نوع float، حتى عندما يكون الجزء العشري صفرًا، مثل 15.0.
يستخدم str للنصوص. توضع القيمة النصية بين علامتي اقتباس مفردتين أو مزدوجتين.
student_name = "سارة"
course_name = 'Python'
age_text = "15"
القيمة "15" نص وليست عددًا؛ لأن وجود علامتي الاقتباس يجعلها من نوع str.
يستخدم bool لتمثيل حالتين منطقيتين فقط:
TrueFalseis_beginner = True
course_completed = False
يجب كتابة الحرف الأول كبيرًا. القيمتان true وfalse ليستا الصياغة الصحيحة للقيم المنطقية في Python.
تستخدم None عندما لا توجد قيمة محددة حاليًا.
final_result = None
لا تعني None العدد صفرًا، ولا تعني نصًا فارغًا، بل تمثل غياب قيمة محددة.
يمكن لاحقًا إسناد قيمة حقيقية إلى المتغير نفسه:
final_result = None
final_result = "ناجح"
تعيد الدالة type() نوع القيمة أو المتغير.
نستخدم print() هنا لإظهار نتيجة type() عند تشغيل الكود من ملف Python.
age = 15
print(type(age))
تظهر النتيجة:
<class 'int'>
أمثلة أخرى:
height = 1.62
print(type(height))
student_name = "سارة"
print(type(student_name))
is_beginner = True
print(type(is_beginner))
notes = None
print(type(notes))
تظهر الأنواع float وstr وbool وNoneType بالترتيب.
يمكن استخدام دوال التحويل الأساسية لإنشاء قيمة من نوع جديد.
age_text = "15"
age_number = int(age_text)
تصبح قيمة age_number عددًا صحيحًا من نوع int.
يمكن تحويل قيمة عشرية إلى عدد صحيح:
height = 1.62
whole_number = int(height)
تكون النتيجة 1؛ لأن int() يقتطع الجزء الكسري باتجاه الصفر، ولا يقرّب القيمة إلى أقرب عدد صحيح.
price_text = "12.5"
price_number = float(price_text)
تصبح القيمة 12.5 من نوع float.
يمكن كذلك تحويل عدد صحيح إلى عدد عشري:
lesson_count = 3
lesson_count_float = float(lesson_count)
تصبح القيمة الجديدة 3.0.
age = 15
age_text = str(age)
تصبح قيمة age_text هي النص "15".
كما يمكن تحويل القيم المنطقية:
status = True
status_text = str(status)
تصبح القيمة النصية "True".
يمكن استخدام bool() لتحويل قيم إلى قيمة منطقية.
print(bool(0))
print(bool(1))
print(bool(""))
print(bool("Python"))
النتائج بالترتيب:
False للعدد صفر.True للعدد غير الصفري.False للنص الفارغ.True للنص غير الفارغ.انتبه إلى أن:
print(bool("False"))
تعيد True؛ لأن القيمة نص غير فارغ، وليست القيمة المنطقية False.
2age = 15
هذا الاسم غير صالح؛ لأن اسم المتغير لا يبدأ برقم.
student_name = سارة
ستتعامل Python مع سارة بوصفه اسمًا، لا قيمة نصية. الصياغة الصحيحة:
student_name = "سارة"
age = "15"
القيمة هنا من نوع str وليست int.
age = int("خمسة عشر")
لا يمكن لـint() تحويل هذا النص مباشرة إلى عدد صحيح؛ لأن النص لا يحتوي على أرقام مكتوبة بصيغة عددية مناسبة.
value = int("12.5")
هذا التحويل لا ينجح؛ لأن النص يمثل عددًا عشريًا. يمكن استخدام float("12.5") للحصول على قيمة عشرية.
student_name وخزّن فيه اسمًا نصيًا.age وخزّن فيه عددًا صحيحًا.height وخزّن فيه عددًا عشريًا.is_beginner وخزّن فيه قيمة منطقية.print(type(...)) لإظهار نوع كل قيمة عند تشغيل الكود من ملف."25" إلى عدد صحيح.25 إلى نص.2student.bool(0) وbool("0")، ثم تحقق باستخدام بيئة Python.= للإسناد.int للأعداد الصحيحة.float للأعداد العشرية.str للنصوص.bool للقيمتين True وFalse.None تمثل عدم وجود قيمة محددة.type() تساعد على معرفة نوع القيمة.int() وfloat() وstr() وbool() للتحويل الأساسي بين الأنواع.الخطوة التالية: ابدأ اختبار أساسيات المتغيرات في Python.
نشر في ٩ أغسطس ٢٠٢٦