الفرق بين المراجعتين لصفحة: «Python/bytes/title»
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE:الدالة <code>bytes.title()</code> في بايثون}}</noinclude> تحوّل الدالة أوائل الكلمات في التسل...' |
لا ملخص تعديل |
||
سطر 1: | سطر 1: | ||
<noinclude>{{DISPLAYTITLE:الدالة <code>bytes.title()</code> في بايثون}}</noinclude> | <noinclude>{{DISPLAYTITLE:الدالة <code>bytes.title()</code> في بايثون}}</noinclude> | ||
يحوّل التابع أوائل الكلمات في التسلسل الثنائي إلى أحرف كبيرة Title Case بترميز ASCII. | |||
== البنية العامة == | == البنية العامة == | ||
<syntaxhighlight lang="python3"> | <syntaxhighlight lang="python3"> | ||
bytes.title() | |||
</syntaxhighlight> | </syntaxhighlight> | ||
== القيمة المعادة == | == القيمة المعادة == | ||
يعيد التابع نسخة من التسلسل الثنائي تكون فيها أوائل الكلمات ذات أحرف كبيرة بترميز ASCII. | |||
الحروف الصغيرة في ترميز ASCII هي قيم البايتات التي تقع ضمن التسلسل: <code>b'abcdefghijklmnopqrstuvwxyz'</code>. | الحروف الصغيرة في ترميز ASCII هي قيم البايتات التي تقع ضمن التسلسل: <code>b'abcdefghijklmnopqrstuvwxyz'</code>. | ||
أما الحروف الكبيرة في ترميز ASCII هي قيم البايتات التي تقع ضمن التسلسل: <code>b'ABCDEFGHIJKLMNOPQRSTUVWXYZ'</code>. | أما الحروف الكبيرة في ترميز ASCII هي قيم البايتات التي تقع ضمن التسلسل: <code>b'ABCDEFGHIJKLMNOPQRSTUVWXYZ'</code>. | ||
== أمثلة == | == أمثلة == | ||
يوضح المثال التالي النتيجة المعادة من تطبيق | يوضح المثال التالي النتيجة المعادة من تطبيق التابع على سلسلة نصية: | ||
<syntaxhighlight lang="python3"> | <syntaxhighlight lang="python3"> | ||
>>> 'Hello world'.title() | >>> 'Hello world'.title() | ||
سطر 23: | سطر 22: | ||
== توضيح == | == توضيح == | ||
يستخدم التابع خوارزمية بسيطة لا تعتمد على أي لغة (language-independent)، حيث تعرّف الكلمة على أنّها مجموعة من الحروف المتتابعة. هذا التعريف صالح في معظم السياقات، ولكن في هذا التعريف تشكّل الفاصلة العليا في الكلمات المختصرة وفي صيغة التملك حدودًا للكلمات، وقد يتسبب ذلك في نتائج غير مرغوب بها: | |||
<syntaxhighlight lang="python3"> | <syntaxhighlight lang="python3"> | ||
سطر 30: | سطر 29: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
يمكن تجاوز هذه المشكلة باستخدام التعبيرات النمطية Regular Expressions: | يمكن تجاوز هذه المشكلة باستخدام [[Python/re|التعبيرات النمطية]] (Regular Expressions): | ||
<syntaxhighlight lang="python3"> | <syntaxhighlight lang="python3"> | ||
سطر 45: | سطر 44: | ||
== انظر أيضًا == | == انظر أيضًا == | ||
* [[Python/bytes/ | *[[Python/bytes|البايتات في بايثون.]] | ||
* [[Python/bytes/lower| | *التابع <code>[[Python/bytes/islower|bytes.islower()]]</code>: التحقق ممّا إذا كان التسلسل الثنائي يحتوي على حرف واحد صغير على الأقل بترميز ASCII، والتحقق من عدم وجود حروف كبيرة. | ||
* [[Python/bytes/swapcase| | *التابع <code>[[Python/bytes/istitle|bytes.istitle()]]</code>: التحقق ممّا إذا كان التسلسل الثنائي هو تسلسل ASCII بحالة titlecase، ومن أنّ التسلسل ليس فارغًا. | ||
* [[Python/bytes| | *التابع <code>[[Python/bytes/isupper|bytes.isupper()]]</code>: التحقق ممّا إذا كان التسلسل الثنائي يحتوي على حرف واحد كبير على الأقل بترميز ASCII، والتحقق من عدم وجود حروف صغيرة. | ||
*التابع <code>[[Python/bytes/lower|bytes.lower()]]</code>: تحويل جميع الحروف بترميز ASCII في التسلسل الثنائي إلى حروف صغيرة. | |||
*التابع <code>[[Python/bytes/swapcase|bytes.swapcase()]]</code>: قلب حالة الحروف بترميز ASCII في التسلسل الثنائي. | |||
*التابع <code>[[Python/bytes/upper|bytes.upper()]]</code>: تحويل جميع الحروف بترميز ASCII في التسلسل الثنائي إلى حروف كبيرة. | |||
== مصادر == | == مصادر == | ||
* [https://docs.python.org/3/library/stdtypes.html#bytes.title قسم title في صفحة Types في توثيق بايثون الرسمي.] | * [https://docs.python.org/3/library/stdtypes.html#bytes.title قسم title في صفحة Types في توثيق بايثون الرسمي.] |
مراجعة 10:31، 9 يونيو 2018
يحوّل التابع أوائل الكلمات في التسلسل الثنائي إلى أحرف كبيرة 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 في التسلسل الثنائي إلى حروف كبيرة.