التابع bytes.title()‎ في بايثون

من موسوعة حسوب
< Python‏ | bytes
(بالتحويل من Python/bytearray/title)

يحوّل التابع‎ أوائل الكلمات في التسلسل الثنائي إلى أحرف كبيرة Title Case بترميز ASCII.

البنية العامة

bytes.title()

القيمة المعادة

يعيد التابع نسخة من التسلسل الثنائي تكون فيها أوائل الكلمات ذات أحرف كبيرة بترميز ASCII.

الحروف الصغيرة في ترميز ASCII هي قيم البايتات التي تقع ضمن التسلسل: ‎b'abcdefghijklmnopqrstuvwxyz'‎.

أما الحروف الكبيرة في ترميز ASCII هي قيم البايتات التي تقع ضمن التسلسل: ‎b'ABCDEFGHIJKLMNOPQRSTUVWXYZ'‎.

أمثلة

يوضح المثال التالي النتيجة المعادة من تطبيق التابع على سلسلة نصية:

>>> 'Hello world'.title()
'Hello World'

توضيح

يستخدم التابع خوارزمية بسيطة لا تعتمد على أي لغة (language-independent)، حيث تعرّف الكلمة على أنّها مجموعة من الحروف المتتابعة. هذا التعريف صالح في معظم السياقات، ولكن في هذا التعريف تشكّل الفاصلة العليا في الكلمات المختصرة وفي صيغة التملك حدودًا للكلمات، وقد يتسبب ذلك في نتائج غير مرغوب بها:

>>> "they're bill's friends from the UK".title()
"They'Re Bill'S Friends From The Uk"

يمكن تجاوز هذه المشكلة باستخدام التعبيرات النمطية (Regular Expressions):

>>> import re
>>> def titlecase(s):
...     return re.sub(rb"[A-Za-z]+('[A-Za-z]+)?",
...                   lambda mo: mo.group(0)[0:1].upper() +
...                              mo.group(0)[1:].lower(),
...                   s)
...
>>> titlecase(b"they're bill's friends.")
b"They're Bill's Friends."

انظر أيضًا

  • البايتات في بايثون.
  • التابع bytes.islower()‎: التحقق ممّا إذا كان التسلسل الثنائي يحتوي على حرف واحد صغير على الأقل بترميز ASCII، والتحقق من عدم وجود حروف كبيرة.
  • التابع bytes.istitle()‎: التحقق ممّا إذا كان التسلسل الثنائي هو تسلسل ASCII بحالة titlecase، ومن أنّ التسلسل ليس فارغًا.
  • التابع bytes.isupper()‎: التحقق ممّا إذا كان التسلسل الثنائي يحتوي على حرف واحد كبير على الأقل بترميز ASCII، والتحقق من عدم وجود حروف صغيرة.
  • التابع bytes.lower()‎: تحويل جميع الحروف بترميز ASCII في التسلسل الثنائي إلى حروف صغيرة.
  • التابع bytes.swapcase()‎: قلب حالة الحروف بترميز ASCII في التسلسل الثنائي.
  • التابع bytes.upper()‎: تحويل جميع الحروف بترميز ASCII في التسلسل الثنائي إلى حروف كبيرة.

مصادر