أساسيات بايثون 20: شرح Boolean في Python والقيم True و False للمبتدئين

أساسيات بايثون 20 شرح Boolean في Python والقيم True و False للمبتدئين

في الدروس السابقة من كورس أساسيات بايثون تعلمنا أنواع بيانات مهمة مثل Lists و Tuples و Dictionaries و Sets. واليوم نكمل مع نوع بسيط جدًا لكنه مهم في كل برنامج تقريبًا: Boolean.

القيم المنطقية أو Boolean في Python هي القيم التي تكون إمّا True أو False. يعني ببساطة: نعم أو لا، صحيح أو خطأ، الشرط تحقق أو لم يتحقق.

قد يبدو الموضوع بسيطًا، لكنه أساس مهم لفهم الشروط if، والمقارنات، والتحقق من البيانات، واتخاذ القرارات داخل البرنامج.

{getToc} $title={محتوى المقال}

{alertInfo} Boolean في بايثون يعني قيمة منطقية: إما True أو False، وتستخدم غالبًا مع الشروط والمقارنات.
شرح فكرة Boolean في Python وكيف تمثل القيم True و False في البرمجة

ما هو Boolean في Python؟

الـ Boolean هو نوع بيانات يستخدم للتعبير عن حالتين فقط:

  • True: وتعني صحيح.
  • False: وتعني خطأ.

مثال بسيط:

is_active = True
is_finished = False

print(is_active)
print(is_finished)

الناتج:

True
False

لاحظ أن True و False في بايثون تُكتب بحرف كبير في البداية، وليس هكذا true أو false.

{alertWarning} في Python يجب كتابة True و False بحرف كبير في البداية، لأن true و false بحروف صغيرة ستسبب خطأ.

لماذا نحتاج Boolean في البرمجة؟

نحتاج Boolean عندما نريد أن يعرف البرنامج هل شيء معين صحيح أم خطأ.

مثلاً:

  • هل عمر المستخدم أكبر من 18؟
  • هل كلمة المرور صحيحة؟
  • هل القائمة فارغة؟
  • هل الرقم أكبر من 10؟
  • هل المستخدم مسجل الدخول؟

كل هذه الأسئلة إجابتها تكون غالبًا True أو False.

المقارنات في بايثون ترجع Boolean

عندما تستخدم عمليات المقارنة في Python، تكون النتيجة دائمًا قيمة Boolean.

مثال:

print(5 > 3)
print(10 == 7)
print(4 != 4)

الناتج:

True
False
False

شرح النتيجة:

  • 5 > 3 صحيحة، لذلك النتيجة True.
  • 10 == 7 غير صحيحة، لذلك النتيجة False.
  • 4 != 4 غير صحيحة، لأن 4 تساوي 4، لذلك النتيجة False.
أمثلة توضح كيف ترجع المقارنات في بايثون قيم True أو False

أهم معاملات المقارنة في Python

هذه أهم معاملات المقارنة التي ترجع Boolean:

المعامل المعنى مثال الناتج
== يساوي 5 == 5 True
!= لا يساوي 5 != 3 True
> أكبر من 7 > 2 True
< أصغر من 7 < 2 False
>= أكبر من أو يساوي 5 >= 5 True
<= أصغر من أو يساوي 4 <= 9 True

استخدام Boolean داخل if

أكثر مكان ستستخدم فيه Boolean هو داخل جملة الشرط if.

مثال:

age = 20

if age >= 18:
    print("مسموح بالدخول")
else:
    print("غير مسموح بالدخول")

هنا الشرط age >= 18 يرجع True، لذلك سيتم تنفيذ السطر الموجود داخل if.

الناتج:

مسموح بالدخول
شرح استخدام Boolean داخل جملة if في Python لاتخاذ القرار
{alertSuccess} جملة if تعتمد على نتيجة منطقية: إذا كانت True تنفذ الكود، وإذا كانت False تنتقل إلى else أو تتجاهل الكتلة.

مثال عملي: التحقق من كلمة المرور

لنفترض أنك تريد التحقق هل كلمة المرور التي كتبها المستخدم صحيحة أم لا.

password = "python123"

is_correct = password == "python123"

print(is_correct)

الناتج:

True

المتغير is_correct هنا يحمل قيمة Boolean، لأن نتيجة المقارنة كانت صحيحة.

ويمكن استخدامه مباشرة داخل if:

password = "python123"

is_correct = password == "python123"

if is_correct:
    print("تم تسجيل الدخول")
else:
    print("كلمة المرور غير صحيحة")

الدالة bool() في Python

الدالة bool() تحول القيمة إلى Boolean، أي ترجع هل القيمة تعتبر True أم False.

print(bool(10))
print(bool(0))
print(bool("Python"))
print(bool(""))

الناتج:

True
False
True
False

القاعدة العامة:

  • القيم الممتلئة غالبًا تعتبر True.
  • القيم الفارغة أو الصفر غالبًا تعتبر False.

القيم التي تعتبر False في بايثون

في Python هناك قيم معينة تعتبر False عند استخدامها داخل شرط.

القيمة المعنى نتيجة bool()
0 الرقم صفر False
"" نص فارغ False
[] قائمة فارغة False
() Tuple فارغة False
{} Dictionary فارغ False
set() Set فارغة False
None لا توجد قيمة False
ملخص القيم التي تعتبر False في بايثون مثل 0 والنص الفارغ والقائمة الفارغة و None

أمثلة على القيم الفارغة داخل if

يمكنك استخدام القيم مباشرة داخل if بدون كتابة مقارنة طويلة.

مثال مع قائمة:

items = []

if items:
    print("القائمة تحتوي على عناصر")
else:
    print("القائمة فارغة")

الناتج:

القائمة فارغة

لأن القائمة الفارغة [] تعتبر False.

مثال مع نص:

name = ""

if name:
    print("تم إدخال الاسم")
else:
    print("الاسم فارغ")

الناتج:

الاسم فارغ
{alertInfo} في بايثون يمكنك اختبار النصوص والقوائم مباشرة داخل if، فإذا كانت فارغة تعتبر False.

استخدام and و or و not مع Boolean

عند التعامل مع Boolean ستحتاج غالبًا إلى المعاملات المنطقية:

  • and: كل الشروط يجب أن تكون صحيحة.
  • or: يكفي أن يكون شرط واحد صحيحًا.
  • not: تعكس النتيجة.

مثال على and

age = 20
has_card = True

if age >= 18 and has_card:
    print("مسموح بالدخول")

هنا يجب أن يكون العمر مناسبًا، ويجب أن تكون البطاقة موجودة.

مثال على or

is_admin = False
is_owner = True

if is_admin or is_owner:
    print("لديك صلاحية")

هنا يكفي أن يكون المستخدم مديرًا أو مالكًا.

مثال على not

is_logged_in = False

if not is_logged_in:
    print("يرجى تسجيل الدخول")

المعامل not عكس القيمة من False إلى True.

الفرق بين = و == في Boolean

من أكثر الأخطاء الشائعة عند المبتدئين الخلط بين = و ==.

  • = تستخدم لإسناد قيمة إلى متغير.
  • == تستخدم للمقارنة بين قيمتين.

مثال:

x = 10      # إسناد قيمة

print(x == 10)  # مقارنة

الناتج:

True
{alertWarning} استخدم = لتخزين قيمة داخل متغير، واستخدم == للمقارنة والحصول على True أو False.

هل True و False أرقام في بايثون؟

في بايثون يمكن التعامل مع True كأنه يساوي 1، و False كأنه يساوي 0 في بعض العمليات.

print(True + True)
print(True + False)
print(False + False)

الناتج:

2
1
0

لكن كمبتدئ، الأفضل أن تتعامل مع Boolean على أنها قيم منطقية وليست أرقامًا، حتى لا تخلط على نفسك.

مثال عملي: برنامج بسيط لفحص نجاح الطالب

في هذا المثال سنستخدم Boolean لمعرفة هل الطالب ناجح أم لا.

grade = 75

is_passed = grade >= 50

if is_passed:
    print("الطالب ناجح")
else:
    print("الطالب راسب")

الناتج:

الطالب ناجح

مثال عملي: التحقق من وجود عنصر في قائمة

يمكنك استخدام in للحصول على نتيجة Boolean.

skills = ["Python", "HTML", "CSS"]

has_python = "Python" in skills

print(has_python)

الناتج:

True

ويمكن استخدامها داخل شرط:

skills = ["Python", "HTML", "CSS"]

if "Python" in skills:
    print("أنت تتعلم بايثون")

أخطاء شائعة عند استخدام Boolean

1. كتابة true بدل True

خطأ:

is_active = true

الصحيح:

is_active = True

2. الخلط بين = و ==

خطأ:

if x = 10:
    print("x تساوي 10")

الصحيح:

if x == 10:
    print("x تساوي 10")

3. عدم فهم القيم الفارغة

بعض المبتدئين يتوقعون أن القائمة الفارغة أو النص الفارغ لا يمكن استخدامهما داخل if، لكن في بايثون هذا طبيعي.

name = ""

if name:
    print("يوجد اسم")
else:
    print("لا يوجد اسم")

الناتج:

لا يوجد اسم

تدريب بسيط على Boolean

اكتب برنامجًا يتحقق هل الرقم زوجي أم فردي.

الحل:

number = 8

is_even = number % 2 == 0

if is_even:
    print("الرقم زوجي")
else:
    print("الرقم فردي")

الناتج:

الرقم زوجي

أسئلة شائعة

ما معنى Boolean في Python؟

Boolean هو نوع بيانات يعبر عن قيمة منطقية تكون إما True أو False.

ما الفرق بين True و False؟

True تعني أن الشرط صحيح، و False تعني أن الشرط غير صحيح.

هل المقارنات في بايثون ترجع Boolean؟

نعم، مثل 5 > 3 ترجع True، و 10 == 7 ترجع False.

ما فائدة bool() في بايثون؟

الدالة bool() تحول أي قيمة إلى Boolean، وتوضح هل تعتبر هذه القيمة صحيحة أم خاطئة داخل الشروط.

هل 0 يعتبر False في Python؟

نعم، الرقم 0 يعتبر False، بينما معظم الأرقام الأخرى تعتبر True.

روابط مهمة من بايثون العرب

مصدر خارجي مفيد

الخلاصة

تعلمنا في هذا الدرس أن Boolean في Python هو نوع بيانات بسيط ومهم جدًا، ويعبر عن قيمتين فقط: True و False.

تعلمنا أيضًا أن المقارنات ترجع Boolean، وأن جملة if تعتمد على هذه القيم لاتخاذ القرار، وتعرفنا على الدالة bool() والقيم التي تعتبر False في بايثون.

{alertSuccess} القاعدة الذهبية: أي شرط في Python يحتاج نتيجة منطقية، وهذه النتيجة غالبًا تكون True أو False.

المقال المقترح التالي

بعد شرح Boolean، المقال التالي الأنسب هو:

أساسيات بايثون 21: شرح Operators في Python للمبتدئين

لأنك بعد فهم القيم المنطقية تحتاج أن تتعلم معاملات المقارنة والمنطق مثل == و != و > و and و or و not.

إرسال تعليق

أحدث أقدم