مقدمة
يمكنك مقارنة السلاسل في Python باستخدام عوامل المساواة (==
) والمقارنة (<
, >
, !=
, <=
, >=
). لا توجد طرق خاصة لمقارنة سلسلتين. في هذه المقالة، ستتعلم كيفية عمل كل من العوامل عند مقارنة السلاسل.
مقارنة سلاسل Python تقارن الأحرف في كلتا السلاسل واحدة تلو الأخرى. عندما يتم العثور على أحرف مختلفة، يتم مقارنة قيم نقاط التعريف اليونيكود الخاصة بها. يعتبر الحرف ذو القيمة اليونيكود الأقل أصغر.
عوامل المساواة والمقارنة في Python
قم بتعريف متغير السلسلة:
fruit1 = 'Apple'
تُظهر الجدول التالي نتائج مقارنة السلاسل المتطابقة (Apple
إلى Apple
) باستخدام عوامل مختلفة.
Operator | Code | Output |
---|---|---|
Equality | print(fruit1 == 'Apple') |
True |
Not equal to | print(fruit1 != 'Apple') |
False |
Less than | print(fruit1 < 'Apple') |
False |
Greater than | print(fruit1 > 'Apple') |
False |
Less than or equal to | print(fruit1 <= 'Apple') |
True |
Greater than or equal to | print(fruit1 >= 'Apple') |
True |
كلتا السلاسل مطابقة تمامًا. بعبارة أخرى، هم متساوون. يُعيد عامل المساواة وغيره من العوامل المساوية لـ True
.
إذا قمت بمقارنة سلاسل قيمها مختلفة، فستحصل على النتيجة المعاكسة تمامًا.
إذا قارنت سلاسل تحتوي على نفس الجزء الفرعي، مثل Apple
و ApplePie
، فإن السلسلة الأطول تعتبر أكبر.
مقارنة إدخال المستخدم لتقييم المساواة باستخدام المشغلات
تأخذ هذه الشفرة المثالية وتقارن الإدخال من المستخدم. ثم يستخدم البرنامج نتائج المقارنة لطباعة معلومات إضافية حول الترتيب الأبجدي لسلاسل الإدخال. في هذه الحالة، يفترض البرنامج أن السلسلة الأصغر تأتي قبل السلسلة الأكبر.
fruit1 = input('Enter the name of the first fruit:\n')
fruit2 = input('Enter the name of the second fruit:\n')
if fruit1 < fruit2:
print(fruit1 + " comes before " + fruit2 + " in the dictionary.")
elif fruit1 > fruit2:
print(fruit1 + " comes after " + fruit2 + " in the dictionary.")
else:
print(fruit1 + " and " + fruit2 + " are the same.")
إليك مثال على الناتج المحتمل عند إدخال قيم مختلفة:
OutputEnter the name of first fruit:
Apple
Enter the name of second fruit:
Banana
Apple comes before Banana in the dictionary.
إليك مثال على الناتج المحتمل عند إدخال سلاسل متطابقة:
OutputEnter the name of first fruit:
Orange
Enter the name of second fruit:
Orange
Orange and Orange are the same.
ملاحظة: لكي يعمل هذا المثال، يجب على المستخدم إدخال إما أحرف كبيرة فقط أو أحرف صغيرة فقط للحرف الأول من كلتا السلسلتين المدخلتين. على سبيل المثال، إذا أدخل المستخدم السلاسل apple
و Banana
، سيكون الناتج apple comes after Banana in the dictionary
، والذي هو غير صحيح.
تحدث هذه الفجوة لأن قيم نقاط رمز يونيكود للأحرف الكبيرة دائمًا أقل من قيم نقاط رمز الأحرف الصغيرة: قيمة a
هي 97 وقيمة B
هي 66. يمكنك اختبار ذلك بنفسك باستخدام ord()
وظيفة لطباعة قيم نقاط رمز الأحرف اليونيكود.
الاستنتاج
في هذه المقالة، تعلمت كيفية مقارنة السلاسل في بايثون باستخدام مشغلات المساواة (==
) والمقارنة (<
, >
, !=
, <=
, >=
). استمر في تعلمك حول سلاسل بايثون.
Source:
https://www.digitalocean.com/community/tutorials/python-string-comparison