بايثون للمبتدئين: إتقان عامل != (ليس مساويًا)

1. ما هو عامل “!=” في بايثون؟ شرح الأساسيات والأهمية

في بايثون، يُعد عامل “!=” (غير مساوٍ) عامل مقارنة يُستخدم للتحقق من أن قيمتين غير متساويتين. تحديدًا، يُرجع True عندما تختلف القيمة اليسرى والقيمة اليمنى، وFalse عندما تكونان متطابقتين. يُستخدم هذا العمل في مجموعة واسعة من السيناريوهات مثل الفرع الشرطي، والتحكم في الحلقات، وتصفية البيانات، وهو مفيد بشكل خاص عند المعالجة بناءً على قيم مختلفة.

مثال على الاستخدام

الكود التالي هو مثال يتحقق مما إذا كانت المتغيرات a وb غير متساويتين.

a = 5
b = 10
if a != b:
    print("a and b are not equal")

في هذه الحالة، بسبب أن a وb لديهما قيمتان مختلفتان، يُخرج “a and b are not equal”. في بايثون، يُستخدم عامل != بشكل متكرر بشكل خاص ويُعد عملًا أساسيًا يحسن من قابلية قراءة الكود ومرونته. بعد ذلك، سنشرح هذه المفهوم الأساسي بالتفصيل مع أمثلة إضافية ملموسة.

2. الاستخدام الأساسي لعامل “!=” في بايثون

يُستخدم “!=” في بايثون في مواقف متنوعة مثل العبارات الشرطية والتصفية. يشرح هذا القسم الاستخدام الملموس للأنواع والبيانات المختلفة.

مثال على مقارنة الأرقام

a = 5
b = 3
if a != b:
    print("a and b are different values")

هنا، إذا كانت المتغيرات a وb مختلفة، يُخرج رسالة تشير إلى الاختلاف.

مثال على مقارنة النصوص

يمكن مقارنة النصوص أيضًا باستخدام !=. عند مقارنة نصوص مختلفة، استخدمه كالتالي.

name1 = "Alice"
name2 = "Bob"
if name1 != name2:
    print("The names are different")

في مقارنات النصوص، يكون != صالحًا أيضًا، وإذا اختلفت المحتويات، يُرجع True، مما يعرض “The names are different” كما هو موضح أعلاه.

مقارنة أنواع بيانات مختلفة

مقارنة أنواع بيانات مختلفة تُرجع دائمًا True. على سبيل المثال، يقارن الكود أدناه رقمًا ونصًا، لكن بسبب اختلاف الأنواع، ينتج True.

number = 1
text = "1"
if number != text:
    print("They have different types and values")

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

年収訴求

3. الفرق بين “!=” و”is not”

لدى بايثون أيضًا عامل مقارنة آخر مشابه لـ “!=”، يُدعى “is not”. ومع ذلك، يُستخدمان لأغراض مختلفة.

الاختلافات في الاستخدام بين “!=” و”is not”

  • != : يُستخدم لمقارنة القيم، للتحقق مما إذا كانت محتويات القوائم أو القواميس متساوية.
  • is not : يُستخدم لمقارنة الكائنات، للتحقق مما إذا كانت تقع في مواقع ذاكرة مختلفة.

مثال: مقارنة القيم مقابل مقارنة الكائنات

a = [1, 2, 3]
b = [1, 2, 3]
c = a

# Compare whether the values are equal
if a != b:
    print("a and b have different values")
else:
    print("a and b have the same values")

# Object comparison
if a is not b:
    print("a and b are different objects")
if a is c:
    print("a and c are the same object")

في هذا المثال، بسبب أن قوائم a وb لديهما قيم متساوية، يُخرج استخدام != “Same value”، لكن ككائنات فهما مختلفة، لذا يعرض “Different object”.

4. الأخطاء الشائعة والنصائح

عند استخدام != في بايثون، غالبًا ما يرتكب المبتدئون الأخطاء التالية.

خطأ من مقارنة أنواع بيانات مختلفة

في بايثون، مقارنة أنواع بيانات مختلفة تُرجع دائمًا True. على سبيل المثال، مقارنة مثل "1" != 1 تنتج True. لعرض تحذير عند اختلاف الأنواع، يمكنك استخدام دالة type() للتحقق من الأنواع.

if type("1") != type(1):
    print("Different types")

الخلط بين == و!=

عند استخدام !=، من السهل الخلط بينه وبين ==. == هو عامل مقارنة للتحقق من المساواة، بينما != هو نقيضه.

年収訴求

5. حالات استخدام مثالية: استخدام “!=” مع شروط متعددة

يمكن دمج عامل “!=” مع شروط أخرى لمقارنة معايير متعددة.

الدمج مع and

age = 25
name = "Alice"
if age != 30 and name != "Bob":
    print("Both the age and name are different from the specified values")

هنا، يتم استيفاء الشرط ويتم إخراج رسالة عندما لا يكون age يساوي 30 ولا يكون name يساوي Bob.

الجمع باستخدام or

if age != 30 or name != "Bob":
    print("At least one of the conditions is different")

في هذه الحالة، يحدث الإخراج إذا كان إما age أو name يختلف عن الشرط.

6. الملخص

عامل “!=” في بايثون هو أداة أساسية للتحقق من عدم المساواة. غطى هذا المقال نطاقًا واسعًا من استخدامه الأساسي إلى الفروقات مع is not، والتحذيرات، وأمثلة التطبيق. باستخدام “!=” بفعالية في الفروع الشرطية وتصفية البيانات، يمكنك كتابة كود أكثر مرونة وكفاءة.

RUNTEQ(ランテック)|超実戦型エンジニア育成スクール