• 0

كيف أغير حالة الحرف الأول فقط في بايثون؟

جربت استخدام capitalize() لتغيير حالة الحرف الأول من السلسلة النصية إلى حرف كبير لكنها لم تعمل هذه الطريقة عند وجود رقم واحد أو أكثر في بداية السلسلة النصية حيث أرغب في مثيل هذه الحالة الانتقال إلى الحرف الموالي لتغيير حالته كما في المثال التالي:

1bob
5sandy

أريدها أن تكون كهذه:

1Bob
5Sandy
1 شخص أعجب بهذا

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

يوجد العديد من الطرق في لغة بايثون لفعل ذلك، فيمكنك على سبيل المثال إنشاء حلقة تكرار والتأكد من كل حرف على حدة فإذا كان رقم نتجاوزه إلى الحرف الموالي وفي حالة العكس نخرج من هذه الحلقة ومن ثم نغير حالة هذا الحرف إلى حرف كبير كما في المثال التالي:

>>> s = '123sa'
>>> for i, c in enumerate(s):
...     if not c.isdigit():
...         break
...
>>> s[:i] + s[i:].capitalize()
'123Sa'

أو يمكنك استخدام دالة title() لفعل ذلك بكل بساطة حيث ستحول جميع الحروف السلسلة النصية إلى حالة الحروف الصغيرة ما عدا الحرف الأول كما في المثال التالي:

>>> '1sandy'.title()
'1Sandy'
>>> '1bob sandy'.title()
'1Bob Sandy'
>>> '1JoeBob'.title()
'1Joebob'

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة

يجب أن تكون عضوًا لدينا لتتمكّن من التعليق

انشاء حساب جديد

يستغرق التسجيل بضع ثوان فقط


سجّل حسابًا جديدًا

تسجيل الدخول

تملك حسابا مسجّلا بالفعل؟


سجّل دخولك الآن