قائمة طرق السلسلة لمعالجة الأحرف الكبيرة والصغيرة في بايثون

اعمال

يأتي نوع سلسلة Python (str) بشكل قياسي مع طرق ملائمة لمعالجة الأحرف الكبيرة والصغيرة. يمكنك التحويل بين الأحرف الكبيرة والصغيرة وتحديد حالة الأحرف.

يتم توفير المعلومات التالية هنا.

  • التحويل بين الأحرف الكبيرة والصغيرة
    • الاستخدام الأساسي
    • التعامل مع الأحرف بالحجم الكامل ونصف الحجم
    • str.upper()تحويل جميع الأحرف إلى أحرف كبيرة
    • str.lower()تحويل جميع الأحرف إلى أحرف صغيرة
    • str.capitalize()حول الحرف الأول إلى أحرف كبيرة والباقي إلى أحرف صغيرة.
    • str.title()تحويل الحرف الأول من الكلمة إلى أحرف كبيرة والباقي إلى أحرف صغيرة.
    • str.swapcase()تحويل الأحرف الكبيرة إلى أحرف صغيرة وصغيرة إلى أحرف كبيرة.
  • حدد الأحرف الكبيرة والصغيرة
    • str.isupper(): تحديد ما إذا كانت جميع الأحرف كبيرة
    • str.islower(): تحديد ما إذا كانت جميع الأحرف صغيرة.
    • str.istitle(): تحديد ما إذا كانت حالة أحرف العنوان.
  • قارن السلاسل بطريقة غير حساسة لحالة الأحرف

التحويل بين الأحرف الكبيرة والصغيرة

الاستخدام الأساسي

أولاً ، سأشرح الاستخدام الأساسي. سنستخدم طريقة upper () لكتابة جميع الأحرف بأحرف كبيرة كمثال ، لكن الأمر نفسه ينطبق على الطرق الأخرى.

من أجل الراحة ، نكتب “تحويل” ، لكن في Python ، كائنات نوع السلسلة (str) غير قابلة للتحديث ، لذلك لم يتم تغيير السلسلة الأصلية (s_org في المثال) نفسها.

s_org = 'pYThon proGramminG laNguAge'

print(s_org.upper())
# PYTHON PROGRAMMING LANGUAGE

print(s_org)
# pYThon proGramminG laNguAge

إذا كنت تريد استخدام السلسلة المحولة لاحقًا ، فيمكنك تخزينها في متغير جديد على النحو التالي.

s_new = s_org.upper()
print(s_new)
# PYTHON PROGRAMMING LANGUAGE

من الممكن أيضًا الكتابة فوق المتغير الأصلي.

s_org = s_org.upper()
print(s_org)
# PYTHON PROGRAMMING LANGUAGE

التعامل مع الأحرف بالحجم الكامل ونصف الحجم

إذا كان الحرف حساسًا لحالة الأحرف ، مثل الأبجدية ، فسيتم تحويله إلى أحرف أحادية البايت ومزدوجة البايت.

تظل الأحرف غير الحساسة لحالة الأحرف ، مثل الأرقام والأحرف الصينية ، بدون تغيير. المثال العلوي () ، ولكن الأمر نفسه ينطبق على الطرق الأخرى.

s_org = 'Pyhon Python 123'

print(s_org.upper())
# PYHON PYTHON 123

str.upper (): تحويل جميع الأحرف إلى أحرف كبيرة

s_org = 'pYThon proGramminG laNguAge'

print(s_org.upper())
# PYTHON PROGRAMMING LANGUAGE

str.lower (): تحويل جميع الأحرف إلى أحرف صغيرة

s_org = 'pYThon proGramminG laNguAge'

print(s_org.lower())
# python programming language

str.capitalize (): تحويل الحرف الأول إلى أحرف كبيرة ، والباقي إلى أحرف صغيرة

s_org = 'pYThon proGramminG laNguAge'

print(s_org.capitalize())
# Python programming language

str.title (): تحويل الحرف الأول من الكلمة إلى أحرف كبيرة والباقي إلى أحرف صغيرة

التحويل إلى ما يسمى بحالة العنوان.

s_org = 'pYThon proGramminG laNguAge'

print(s_org.title())
# Python Programming Language

str.swapcase (): تحويل الأحرف الكبيرة إلى الأحرف الصغيرة ، ومن الأحرف الصغيرة إلى الأحرف الكبيرة

تبديل الأحرف الكبيرة والصغيرة.

s_org = 'pYThon proGramminG laNguAge'

print(s_org.swapcase())
# PytHON PROgRAMMINg LAnGUaGE

حدد الأحرف الكبيرة والصغيرة

في الأمثلة التالية ، يتم استدعاء العمليات مباشرة من سلسلة حرفية مثل ‘python’ ، ولكن الأمر نفسه ينطبق عند تخزينها في متغيرات كما في الأمثلة السابقة.

str.isupper (): تحديد ما إذا كانت جميع الأحرف كبيرة

تعيد isupper () صحيحًا إذا كانت تحتوي على الأقل على حرف واحد حساس لحالة الأحرف وكلها أحرف كبيرة ، وتعيد false على خلاف ذلك.

print('PYTHON'.isupper())
# True

print('Python'.isupper())
# False

إذا كان الحرف حساسًا لحالة الأحرف ، فسيتم الحكم على الأحرف مزدوجة البايت.

print('PYTHON'.isupper())
# True

إذا تم تضمين حرف واحد حساس لحالة الأحرف ، فسيتم تجاهل الحرف غير المتحسس لحالة الأحرف ، ولكن إذا لم يتم تضمين أي حرف حساس لحالة الأحرف (جميع الأحرف غير حساسة لحالة الأحرف) ، فسيكون القرار خاطئًا.

print('PYTHON 123'.isupper())
# True

print('123'.isupper())
# False

str.islower (): تحديد ما إذا كانت جميع الأحرف صغيرة

تعيد islower () القيمة الصحيحة إذا كانت تحتوي على الأقل على حرف واحد حساس لحالة الأحرف وكلها أحرف صغيرة ، وتعيد القيمة false في الحالات الأخرى.

print('python'.islower())
# True

print('Python'.islower())
# False

إذا كان الحرف حساسًا لحالة الأحرف ، فسيتم الحكم على الأحرف مزدوجة البايت.

print('python'.islower())
# True

إذا تم تضمين حرف واحد حساس لحالة الأحرف ، فسيتم تجاهل الحرف غير المتحسس لحالة الأحرف ، ولكن إذا لم يتم تضمين أي حرف حساس لحالة الأحرف (جميع الأحرف غير حساسة لحالة الأحرف) ، فسيكون القرار خاطئًا.

print('python 123'.islower())
# True

print('123'.islower())
# False

str.istitle (): تحديد ما إذا كانت الحالة حالة عنوان أم لا.

istitle () يعود صحيحًا إذا كانت السلسلة عبارة عن حالة عنوان (الحرف الأول من الكلمة كبير ، والباقي أحرف صغيرة) ، وإلا فسيكون خطأ.

print('Python Programming Language'.istitle())
# True

print('PYTHON Programming Language'.istitle())
# False

إذا كانت تحتوي على أحرف غير حساسة لحالة الأحرف ، فسيكون خطأ إذا كانت الأحرف غير الحساسة لحالة الأحرف مسبوقة بحرف صغير.

print('★Python Programming Language'.istitle())
# True

print('Python★ Programming Language'.istitle())
# True

print('Py★thon Programming Language'.istitle())
# False

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

print('The 1st Team'.istitle())
# False

print('The 1St Team'.istitle())
# True

إذا لم يتم تضمين أحرف حساسة لحالة الأحرف (جميع الأحرف غير حساسة لحالة الأحرف) ، خطأ.

print('123'.istitle())
# False

قارن السلاسل بطريقة غير حساسة لحالة الأحرف

عند مقارنة السلاسل ، لا تعتبر الأحرف الكبيرة والصغيرة المختلفة متكافئة.

s1 = 'python'
s2 = 'PYTHON'

print(s1 == s2)
# False

إذا كنت تريد إجراء مقارنة غير حساسة لحالة الأحرف ، فيمكنك استخدام العلوي () أو السفلي () لتحويل الاثنين ومقارنتهما.

print(s1.upper() == s2.upper())
# True

print(s1.lower() == s2.lower())
# True

print(s1.capitalize() == s2.capitalize())
# True

print(s1.title() == s2.title())
# True