قطع سلسلة Python

يدعم سلسلة Python التقسيم لإنشاء مشوقة. يرجى ملاحظة أن سلسلة Python لا تتغير، حيث ينشئ التقسيم مشوقة جديدة من سلسلة المصدر وتظل السلسلة الأصلية دون تغيير.

تقسيم سلسلة Python

يكون بناء جملة تقسيم سلسلة Python كما يلي:

str_object[start_pos:end_pos:step]

يبدأ التقسيم من مؤشر start_pos (شامل) وينتهي في مؤشر end_pos (غير شامل). يُستخدم معامل الخطوة لتحديد الخطوات التي يتم اتخاذها من مؤشر البداية إلى مؤشر النهاية. يتبع تقسيم سلسلة Python دائمًا هذا القاعدة: s[:i] + s[i:] == s لأي مؤشر ‘i’. جميع هذه المعاملات اختيارية – قيمة start_pos الافتراضية هي 0 ، قيمة end_pos الافتراضية هي طول السلسلة ، وقيمة الخطوة الافتراضية هي 1. دعونا نلقي نظرة على بعض الأمثلة البسيطة لوظيفة تقسيم السلسلة لإنشاء مشوقة.

s = 'HelloWorld'

print(s[:])

print(s[::])

الإخراج:

HelloWorld
HelloWorld

يرجى ملاحظة أنه نظرًا لعدم توفير أيٍ من معلمات التقسيم ، تكون المشوقة مساوية للسلسلة الأصلية. دعونا نلقي نظرة على بعض الأمثلة الأخرى لتقسيم السلسلة.

s = 'HelloWorld'
first_five_chars = s[:5]
print(first_five_chars)

third_to_fifth_chars = s[2:5]
print(third_to_fifth_chars)

الإخراج:

Hello
llo

يرجى ملاحظة أن قيمة المؤشر تبدأ من 0 ، لذا start_pos 2 يشير إلى الحرف الثالث في السلسلة.

عكس السلسلة باستخدام التقسيم

يمكننا عكس سلسلة باستخدام التقسيم عن طريق تحديد قيمة الخطوة كـ -1.

s = 'HelloWorld'
reverse_str = s[::-1]
print(reverse_str)

dlroWolleH دعونا نلقي نظرة على بعض الأمثلة الأخرى حول استخدام الخطوات وقيم الفهرس السلبية.

s1 = s[2:8:2]
print(s1)

Output: loo هنا يحتوي النص الفرعي على أحرف من الفهارس 2،4 و 6.

s1 = s[8:1:-1]
print(s1)

Output: lroWoll في هذه الحالة، تتم أخذ قيم الفهرس من النهاية إلى البداية. يتم إنشاء النص الفرعي من الفهارس 1 إلى 7 من النهاية إلى البداية.

s1 = s[8:1:-2]
print(s1)

Output: lool يعمل قطع Python مع الفهارس السلبية أيضًا، في هذه الحالة، يتم استبعاد start_pos وتضمين end_pos في النص الفرعي.

s1 = s[-4:-2]
print(s1)

Output: or تتعامل قطع السلسلة في Python بشكل لائق مع الفهارس التي تزيد عن النطاق.

>>>s = 'Python'
>>>s[100:]
''
>>>s[2:50]
'thon'

هذا كل شيء بالنسبة لوظيفة قطع السلسلة في Python لإنشاء نص فرعي.

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

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