وحدة سلسلة Python

الوحدة النصية في Python تحتوي على بعض الثوابت، وظائف الأدوات، والفئات لتلاعب النصوص.

وحدة النص في Python

إنها وحدة مدمجة ويجب علينا استيرادها قبل استخدام أي من ثوابتها وفئاتها.

ثوابت وحدة النص

لنلقي نظرة على الثوابت المعرفة في وحدة النص.

import string

# ثوابت وحدة النص
print(string.ascii_letters)
print(string.ascii_lowercase)
print(string.ascii_uppercase)
print(string.digits)
print(string.hexdigits)
print(string.whitespace)  # ' \t\n\r\x0b\x0c'
print(string.punctuation)

الناتج:

abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
abcdefghijklmnopqrstuvwxyz
ABCDEFGHIJKLMNOPQRSTUVWXYZ
0123456789
0123456789abcdefABCDEF
 	

!"#$%&'()*+,-./:;?@[\]^_`{|}~

وظيفة capwords() في وحدة النص

تحتوي وحدة السلسلة في Python على وظيفة مساعدة واحدة فقط – capwords(s، sep=None). هذه الوظيفة تقسم السلسلة المحددة إلى كلمات باستخدام str.split(). ثم تجعل كل كلمة بداية حرفها كبيرًا باستخدام وظيفة str.capitalize(). وأخيرًا، تقوم بدمج الكلمات المحددة بواسطة str.join(). إذا لم يتم توفير sep كمعلم اختياري أو إذا كان None، فإن الفراغات البيضاء الأولية والنهائية يتم إزالتها وتفصل الكلمات بمسافة بيضاء واحدة. إذا تم توفيرها، فإن الفاصلة تُستخدم لتقسيم ودمج الكلمات.

s = '  Welcome TO  \n\n JournalDev '
print(string.capwords(s))

الناتج: مرحبًا بك في Journaldev

فصول وحدة السلسلة في Python

تحتوي وحدة السلسلة في Python على فصلين – Formatter وTemplate.

Formatter

تتصرف بالضبط كوظيفة str.format(). تصبح هذه الفئة مفيدة إذا كنت ترغب في إنشاء فئة فرعية لها وتعريف بنية سلسلة التنسيق الخاصة بك. دعنا نلقي نظرة على مثال بسيط لاستخدام فئة Formatter.

from string import Formatter

formatter = Formatter()
print(formatter.format('{website}', website='JournalDev'))
print(formatter.format('{} {website}', 'Welcome to', website='JournalDev'))

# تتصرف format() بنفس الطريقة
print('{} {website}'.format('Welcome to', website='JournalDev'))

الإخراج:

Welcome to JournalDev
Welcome to JournalDev

القالب

يُستخدم هذا الصنف لإنشاء قالب سلسلة للاستبدالات السلسة كما هو موضح في PEP 292. إنه مفيد في تنفيذ التدويل الدولي (i18n) في تطبيق حيث لا نحتاج إلى قواعد تنسيق معقدة.

from string import Template

t = Template('$name is the $title of $company')
s = t.substitute(name='Pankaj', title='Founder', company='JournalDev.')
print(s)

الإخراج: Pankaj هو مؤسس JournalDev.

يمكنك مراجعة البرنامج النصي الكامل للبايثون والمزيد من الأمثلة على بايثون من مستودعنا على GitHub.

المرجع: الوثائق الرسمية

Source:
https://www.digitalocean.com/community/tutorials/python-string-module