في لغة بايثون، "السلاسل النصية" (Strings) هي نوع بيانات يُستخدم لتمثيل النصوص. ببساطة، السلسلة النصية هي تسلسل من الأحرف، مثل الكلمات والجمل والرموز. تُعتبر السلاسل النصية من الأنواع الأساسية والمهمة جدًا في بايثون، وتُستخدم على نطاق واسع في معالجة البيانات والتفاعل مع المستخدمين.

خصائص السلاسل النصية في بايثون:

  • تسلسل: السلسلة النصية عبارة عن تسلسل مُرتب من الأحرف، ما يعني أن ترتيب الأحرف فيها مهم.
  • غير قابلة للتغيير (Immutable): بمجرد إنشاء سلسلة نصية، لا يمكنك تغييرها مباشرة. إذا حاولت تعديل سلسلة نصية، فإن بايثون ستُنشئ سلسلة نصية جديدة بدلاً من تعديل الأصلية.
  • مُحاطة بعلامات اقتباس: تُكتب السلاسل النصية بين علامتي اقتباس مفردة (') أو مزدوجة (") أو ثلاثية (''' أو """).

طرق إنشاء السلاسل النصية:

  • علامات اقتباس مفردة أو مزدوجة: تُستخدم لإنشاء سلاسل نصية بسيطة.

    Python
    string1 = 'مرحباً بالعالم'
    string2 = "Hello, world!"
  • علامات اقتباس ثلاثية: تُستخدم لإنشاء سلاسل نصية متعددة الأسطر أو تحتوي على علامات اقتباس مفردة أو مزدوجة داخلها.

    Python
    string3 = '''هذه سلسلة نصية
    متعددة الأسطر.'''

    string4 = """هذه سلسلة نصية
    تحتوي على علامة 'اقتباس' مفردة."""

العمليات على السلاسل النصية:

توفر بايثون العديد من العمليات والدوال للتعامل مع السلاسل النصية، منها:

  • الوصول إلى الأحرف (Indexing): يمكنك الوصول إلى حرف معين في السلسلة النصية باستخدام الفهرس (Index)، الذي يبدأ من 0 للحرف الأول.

    Python
    string = "Python"
    print(string[0]) # Output: P
    print(string[1]) # Output: y
    print(string[-1]) # Output: n (الوصول من النهاية)
  • التقطيع (Slicing): يمكنك استخراج جزء من السلسلة النصية باستخدام التقطيع.

    Python
    string = "Python"
    print(string[1:4]) # Output: yth
    print(string[:3]) # Output: Pyt
    print(string[3:]) # Output: hon
  • الدمج (Concatenation): يمكنك دمج سلسلتين نصيتين باستخدام العامل +.

    Python
    string1 = "Hello"
    string2 = "World"
    print(string1 + " " + string2) # Output: Hello World
  • التكرار (Repetition): يمكنك تكرار سلسلة نصية باستخدام العامل *.

    Python
    string = "Hello"
    print(string * 3) # Output: HelloHelloHello
  • الطول (Length): يمكنك الحصول على طول السلسلة النصية باستخدام الدالة len().

    Python
    string = "Python"
    print(len(string)) # Output: 6
  • التحويل إلى أحرف كبيرة/صغيرة (Case Conversion):

    • upper(): لتحويل السلسلة إلى أحرف كبيرة.
    • lower(): لتحويل السلسلة إلى أحرف صغيرة.
    • capitalize(): لجعل الحرف الأول كبيرًا وبقية الأحرف صغيرة.
    Python
    string = "python"
    print(string.upper()) # Output: PYTHON
    print("PYTHON".lower()) # Output: python
    print("hello world".capitalize()) # Output: Hello world
  • البحث والاستبدال (Finding and Replacing):

    • find(): للبحث عن سلسلة فرعية وإرجاع فهرس بدايتها.
    • replace(): لاستبدال سلسلة فرعية بأخرى.
    Python
    string = "Hello world"
    print(string.find("world")) # Output: 6
    print(string.replace("world", "Python")) # Output: Hello Python
  • التحقق من وجود سلسلة فرعية (Membership):

    • in: للتحقق من وجود سلسلة فرعية في سلسلة نصية.
    • not in: للتحقق من عدم وجود سلسلة فرعية في سلسلة نصية.
    Python
    string = "Hello world"
    print("world" in string) # Output: True
    print("python" not in string) # Output: True