سلاسل النصوص في بايثون: دوال وطرق التعامل مع السلاسل

مدرب بايثون أونلاين للمبتدئين

تعلم Python بسهولة دون إرهاق نظري. حل مهام عملية مع التحقق التلقائي واكتب الكود مباشرة في المتصفح.

ابدأ الدورة

أساسيات تنسيق السلاسل النصية في بايثون

يُعد تنسيق السلاسل النصية أحد أقوى وأسهل الأدوات في لغة بايثون. تتيح لك هذه الآلية التحكم بمرونة في عرض المعلومات في سيناريوهات التطوير المختلفة. سواء كنت تنشئ تقارير، أو تُنشئ ملفات سجلات، أو تُطور واجهة مستخدم، فإن النص المُنسّق بشكل جميل وصحيح يلعب دورًا محوريًا في فهم المعلومات.

تزداد أهمية تنسيق السلاسل النصية عند التعامل مع البيانات الرقمية، التواريخ، الجداول، والقوالب متعددة المستويات. يُحسّن التنسيق الصحيح للنص من قابلية قراءة الكود بشكل كبير، ويُبسط عمليات التصحيح والتسجيل، كما يُحسّن عرض النتائج في واجهات المستخدم.

في بيئة التطوير الاحترافية، غالبًا ما تصبح السلاسل المُنسّقة جزءًا لا يتجزأ من القوالب، ملفات الإعدادات، وتقارير HTML. الاستخدام الصحيح لهذه الأداة يُتيح لك إنشاء كود أكثر قابلية للصيانة والوضوح.

ثلاث طرق رئيسية للتنسيق

تُقدم بايثون للمطورين ثلاث طرق رئيسية لتنسيق السلاسل النصية:

  • f-strings (سلاسل f) — الطريقة الحديثة، المتاحة بدءًا من الإصدار Python 3.6
  • طريقة .format() — طريقة شاملة، متوافقة مع الإصدارات الأقدم
  • تنسيق % — الأسلوب التقليدي، المُوروث من لغة C

في هذه المقالة، سنستعرض بالتفصيل كل طريقة من الطرق المذكورة. سنولي اهتمامًا خاصًا لسلاسل f باعتبارها الطريقة الأكثر قابلية للقراءة والأعلى أداءً. كما سنغطي تنسيق أنواع مختلفة من الأرقام، بما في ذلك القيم العشرية، النسب المئوية، والترميز الأسي. سنستعرض تقنيات محاذاة النصوص، العمل مع القوالب، وأمثلة عملية من مشاريع تطوير حقيقية.

سلاسل f: المعيار الحديث للتنسيق

الصيغة الأساسية والإمكانيات

ظهرت سلاسل f في Python 3.6 وكانت بمثابة نقلة نوعية في مجال سهولة الاستخدام وقابلية قراءة الكود. وهي عبارة عن نصوص حرفية خاصة تبدأ بالبادئة f قبل علامات الاقتباس الافتتاحية. داخل هذه السلاسل، يمكنك وضع المتغيرات والتعبيرات بين قوسين متعرجين {}.

name = "أحمد"
age = 30
print(f"مرحبًا، اسمي {name}، عمري {age} سنة.")

الميزة الرئيسية لسلاسل f هي إمكانية استخدام ليس فقط المتغيرات، بل وأي تعبيرات بايثون صالحة:

print(f"بعد 5 سنوات سيكون عمري {age + 5} سنة.")

داخل سلاسل f، يمكنك استدعاء الدوال والطرق:

def square(x):
    return x * x

print(f"مربع العدد 4: {square(4)}")

إمكانيات متقدمة لسلاسل f

تدعم سلاسل f الوصول إلى خصائص الكائنات وعناصر المجموعات:

class Person:
    def __init__(self, name, age):
        self.name = name
        self.age = age

person = Person("سارة", 25)
print(f"الموظف: {person.name}، العمر: {person.age}")

data = {"مدينة": "القاهرة", "عدد السكان": 9500000}
print(f"مدينة {data['مدينة']} بعدد سكان {data['عدد السكان']:,} نسمة")

تنسيق الأرقام في سلاسل f

تُوفر سلاسل f إمكانيات قوية لتنسيق القيم الرقمية:

pi = 3.1415926
print(f"العدد باي بمنزلتين عشريتين: {pi:.2f}")  # 3.14

المدونات

توصيات الكتب

الصيغة الغرض مثال على النتيجة
:.2f منزلتان عشريتان (float) 3.14
:,.2f مع فاصل الآلاف 1,234.56
:e الصيغة الأسية 3.14e+00