Python سلاسل: استبدال، الانضمام، تقسيم، Reverse
⚡ ملخص ذكي
Python السلاسل النصية عبارة عن تسلسلات غير قابلة للتغيير من الأحرف، وتتضمن العديد من الدوال المدمجة لمعالجة النصوص. توضح الأمثلة أدناه كيفية استخدام التقطيع، ومعاملات السلاسل النصية، والاستبدال، والتحويل بين الأحرف الكبيرة والصغيرة، والدمج، والعكس، والتقسيم، وذلك باستخدام كود قابل للتنفيذ.

In Pythonكل شيء عبارة عن كائن، والسلاسل النصية هي كائنات أيضًا. Python يمكن إنشاء السلسلة ببساطة عن طريق وضع الأحرف بين علامتي اقتباس مزدوجتين.
فمثلا:
فار = "مرحبا بالعالم!"
الوصول إلى القيم في السلاسل
Python لا يدعم نوع الحرف; يتم التعامل مع هذه كسلاسل طولها واحد، وتعتبر أيضًا سلسلة فرعية.
نستخدم الأقواس المربعة للتقطيع مع الفهرس أو الفهارس للحصول على سلسلة فرعية.
var1 = "Guru99!"
var2 = "Software Testing"
print ("var1[0]:",var1[0])
print ("var2[1:5]:",var2[1:5])
الإخراج:
var1[0]: G var2[1:5]: oftw
سلسلة مختلفة Operaالاختصاصات
توجد عوامل تشغيل مختلفة للسلاسل النصية يمكن استخدامها بطرق مختلفة، مثل دمج سلسلة نصية مختلفة.
لنفترض أن a = guru و b = 99، فإن a + b = "guru99". وبالمثل، إذا كنت تستخدم a * 2، فستحصل على "GuruGuruوبالمثل، يمكنك استخدام عوامل تشغيل أخرى في سلسلة نصية.
| المُشغل | الوصف | مثال |
|---|---|---|
| [] | الشريحة – تُعطي الحرف من الفهرس المُعطى | سيعطي a[1] الحرف "u" من الكلمة Guru على هذا النحو ( 0=G، 1=u، 2=r و 3=u)
x="Guru" print (x[1]) |
| [ : ] | شريحة النطاق - تُعطي الأحرف من النطاق المحدد | x [1:3] سيعطي "ur" من الكلمة Guruتذكر أنه لن يأخذ في الاعتبار الصفر الذي يمثل G، بل سيأخذ في الاعتبار الكلمة التي تليه وهي ur.
x="Guru" print (x[1:3]) |
| in | العضوية - تُرجع القيمة "صحيح" إذا كان الحرف موجودًا في السلسلة المُعطاة | حرف u موجود في كلمة Guru وبالتالي ستكون النتيجة 1 (صحيح)
x="Guru"
print ("u" in x)
|
| ليس في | العضوية - تُرجع القيمة "صحيح" إذا لم يكن الحرف موجودًا في السلسلة المُعطاة | الحرف l غير موجود في كلمة word Guru وبالتالي سيعطي 1
x="Guru"
print ("l" not in x)
|
| ص / ص | تمنع السلسلة الأولية المعنى الفعلي لأحرف الهروب. | طباعة مطبوعات r'\n' \n وطباعة مطبوعات R'/n' \n |
| % - يستخدم لتنسيق السلسلة | %r – يُدرج التمثيل النصي القياسي للكائن (أي repr(o)) %s – يُدرج التمثيل النصي للعرض للكائن (أي str(o)) %d – يُنسق رقمًا للعرض | سيكون إخراج هذا الرمز هو "المعلم 99".
name = 'guru'
number = 99
print ('%s %d' % (name,number))
|
| + | فإنه يسلسل 2 سلاسل | فهو يسلسل السلاسل ويعطي النتيجة
x="Guru" y="99" print (x+y) |
| * | كرر | يقوم بطباعة الحرف مرتين.
x="Guru" y="99" print (x*2) |
بعض الأمثلة الأخرى
يمكنك تحديث Python يمكن تغيير السلسلة النصية عن طريق إعادة تعيين متغير إلى سلسلة نصية أخرى. يمكن أن تكون القيمة الجديدة مرتبطة بقيمة سابقة، أو بسلسلة نصية مختلفة تمامًا.
x = "Hello World!" print(x[:6]) print(x[0:6] + "Guru99")
الإخراج:
Hello Hello Guru99
ملاحظات: – يؤدي استخدام Slice [:6] أو [0:6] إلى نفس التأثير.
Python طريقة استبدال السلسلة ().
تقوم الدالة replace() بإرجاع نسخة من السلسلة النصية حيث تم استبدال قيم السلسلة القديمة بالقيمة الجديدة.
oldstring = 'I like Guru99'
newstring = oldstring.replace('like', 'love')
print(newstring)
الإخراج:
I love Guru99
تغيير سلاسل الأحرف الكبيرة والصغيرة
In Python، يمكنك أيضًا تغيير السلسلة إلى أحرف كبيرة أو أحرف صغيرة.
string="python at guru99" print(string.upper())
الإخراج:
PYTHON AT GURU99
وبالمثل، يمكنك أيضًا استخدام وظائف أخرى مثل capitalize().
string="python at guru99" print(string.capitalize())
الإخراج:
Python at guru99
يمكنك أيضًا تحويل النص إلى أحرف صغيرة.
string="PYTHON AT GURU99" print(string.lower())
الإخراج:
python at guru99
استخدام وظيفة "الانضمام" للسلسلة
تُعدّ دالة join() طريقةً أكثر مرونةً لدمج السلاسل النصية. باستخدام هذه الدالة، يمكنك إضافة أي حرف إلى السلسلة.
على سبيل المثال، إذا كنت تريد إضافة نقطتين (:) بعد كل حرف في السلسلة "Pythonيمكنك استخدام الكود التالي.
print(":".join("Python"))
الإخراج:
P:y:t:h:o:n
Revسلسلة ersing
باستخدام الدالة reversed()، يمكنك عكس ترتيب السلسلة النصية. على سبيل المثال، إذا كانت لدينا السلسلة النصية "12345"، فقم بتطبيق الكود الخاص بالدالة reversed() كما هو موضح أدناه.
string="12345"
print(''.join(reversed(string)))
الإخراج:
54321
سلاسل الانقسام
سلاسل الانقسام هي وظيفة أخرى يمكن تطبيقها فيها Pythonلنرى ذلك بالنسبة للسلسلة النصية "guru99 career guru99". أولاً، سنقوم بتقسيم السلسلة باستخدام الأمر word.split للحصول على النتيجة.
word="guru99 career guru99"
print(word.split(' '))
الإخراج:
['guru99', 'career', 'guru99']
لفهم هذا بشكل أفضل، سنرى مثالاً آخر على عملية الفصل. بدلاً من المسافة (' ')، سنستبدلها بـ ('r')، وسيؤدي ذلك إلى فصل السلسلة عند ذكر 'r' فيها.
word="guru99 career guru99"
print(word.split('r'))
الإخراج:
['gu', 'u99 ca', 'ee', ' gu', 'u99']
ملاحظة هامة: In Python، السلاسل النصية غير قابلة للتغيير.
ضع في اعتبارك الكود التالي:
x = "Guru99"
x.replace("Guru99","Python")
print(x)
الإخراج:
Guru99
سيعود الأمر. Guru99. هذا لأن x.replace(“Guru99 بوصةPython") يعود نسخة من X مع إجراء تعديلات.
ستحتاج إلى استخدام الكود التالي لملاحظة التغييرات.
x = "Guru99"
x = x.replace("Guru99","Python")
print(x)
الإخراج:
Python
الرموز المذكورة أعلاه هي Python ثلاثة أمثلة. إذا كنت ترغب في تشغيلها في Python 2- يرجى الاطلاع على الكود التالي.
Python 2 مثال
#Accessing Values in Strings
var1 = "Guru99!"
var2 = "Software Testing"
print "var1[0]:",var1[0]
print "var2[1:5]:",var2[1:5]
#Some more examples
x = "Hello World!"
print x[:6]
print x[0:6] + "Guru99"
#Python String replace() Method
oldstring = 'I like Guru99'
newstring = oldstring.replace('like', 'love')
print newstring
#Changing upper and lower case strings
string="python at guru99"
print string.upper()
string="python at guru99"
print string.capitalize()
string="PYTHON AT GURU99"
print string.lower()
#Using "join" function for the string
print":".join("Python")
#Reversing String
string="12345"
print''.join(reversed(string))
#Split Strings
word="guru99 career guru99"
print word.split(' ')
word="guru99 career guru99"
print word.split('r')
x = "Guru99"
x.replace("Guru99","Python")
print x
x = "Guru99"
x = x.replace("Guru99","Python")
print x
الإخراج:
var1[0]: G var2[1:5]: oftw Hello Hello Guru99 I love Guru99 PYTHON AT GURU99 Python at guru99 python at guru99 P:y:t:h:o:n 54321 ['guru99', 'career', 'guru99'] ['gu', 'u99 ca', 'ee', ' gu', 'u99'] Guru99 Python
Python لقد قدمت وظيفة .format() التي تتخلص من استخدام %d وما إلى ذلك لتنسيق السلاسل النصية.
" تعلم المزيد عن Python تقسيم السلسلة ()
