Python تقسيم السلسلة النصية: قائمة، حسب الحرف، فاصل

⚡ ملخص ذكي

Python الدالة `string split()` هي دالة مدمجة تقوم بتقسيم سلسلة نصية إلى قائمة من السلاسل الفرعية باستخدام فاصل. تُعيد هذه الدالة الأجزاء كعناصر قائمة، وتقبل حدًا اختياريًا للتقسيم الأقصى (maxsplit limit).

  • 🔪 فاصل: تقوم الدالة split() بتقسيم السلسلة عند كل فاصل؛ أما في حالة عدم وجود فاصل، فإنها تقسم السلسلة عند المسافات البيضاء.
  • 🔢 ماكس سبليت: تحدد الوسيطة الاختيارية maxsplit عدد التقسيمات عند maxsplit زائد واحد.
  • 📋 قيمة الإرجاع: تقوم الدالة split() بإرجاع قائمة من السلاسل الفرعية، مما يسهل التكرار عليها أو فهرستها.
  • ↔️ rsplit (): تقوم طريقة rsplit() بالتقسيم من اليمين، وتغير النتائج فقط باستخدام maxsplit.
  • 🔗 انضم(): تُعتبر طريقة str.join() عكس طريقة split()، حيث تعيد ضم قائمة إلى سلسلة نصية واحدة.
  • 🤖 مساعدة الذكاء الاصطناعي: تُنشئ المساعدات المدعومة بالذكاء الاصطناعي استدعاءات split() وتُعزز عملية تجزئة الكلمات في مسارات معالجة اللغة الطبيعية والتعلم الآلي.

Python تقسيم السلسلة ()

ما هو سبليت في Python?

تساعد الدالة split() في التلاعب بالسلسلة in Pythonتتيح لك هذه الدالة تقسيم سلسلة نصية إلى سلاسل فرعية مختلفة. وتعيد قائمة بالكلمات الموجودة في سطر أو سلسلة نصية مفصولة بسلسلة فاصلة.

لماذا نستخدم دالة split() في Python?

إليكم أسباب استخدام Python دالة split():

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

صيغة الدالة split() في Python

الدالة split() في Python تُوفّر هذه الدالة قائمةً بالكلمات في كل سطر أو سلسلة نصية. تُفصل هذه السلاسل دائمًا بسلسلة فاصلة. تُوفّر الدالة سلسلة فرعية واحدة أو أكثر من السلاسل الرئيسية. يتكون بناء جملة الدالة split() من دالة ذات مُعاملين يُسميان الفاصل والقيمة القصوى، مع قيمة مُعادة.

يتم توفير صيغة الدالة split() أدناه:

بناء الجملة:

string. split (separator, max)

يتم وصف المعلمات التالية للدالة على النحو التالي:

  • فاصل: يُستخدم الفاصل لتحديد الفاصل. وباستخدام الفاصل، تقوم الدالة split() بتقسيم السلسلة الرئيسية إلى عدة سلاسل فرعية.
  • المعلمة ماكسسبليت: هذا رقم يتم تمريره إلى الدالة لتقسيم السلسلة إلى أكبر عدد ممكن من التكرارات.
  • الإرجاع: تقوم الدالة split() بإرجاع قائمة السلاسل النصية بعد تقسيم السلسلة الرئيسية.

كيفية تقسيم سلسلة تنطوي على محدد؟

يمكن تعريف الفاصل بأنه سلسلة نصية تظهر على شكل مسافة، أو فاصلة، أو فاصلة منقوطة، أو نقطتين رأسيتين، أو أي حرف آخر. تُخرج الدالة بداية ونهاية السلسلة النصية، أو الكلمة، أو عنصر البيانات.

دعونا نفكر في ما يلي Python مثال على استخدام دالة split() مع وجود فاصل.

Python رمز:

Python رمز:

text = "Hello World Guru99"
# splits at space
print(text.split())
text = "Hello,World, Guru99"
# splits at ','
print(text.split(", "))
text = "Hello,World:, Guru99"
# Splits at ':'
print(text.split(":"))

الإخراج:

['Hello', 'World', 'Guru99']
['Hello,World', 'Guru99']
['Hello,World', ', Guru99']

في الكود أعلاه، يتم فصل السلسلة باستخدام محددات النقطتين والمسافة والفاصلة.

كيفية تقسيم سلسلة عند حدوث أي حرف موجود في السلسلة؟

الدالة split() في Python يمكن استخدامها بطرق عديدة. أحد هذه السيناريوهات هو استخدام دالة split() عند ظهور حرف معين كفاصل. تُستخدم دالة split() لتحديد حرف يمكن استخدامه بدلاً من الفاصل الموجود في السلسلة الرئيسية لتقسيم السلسلة.

لننظر في المثال التالي لاستخدام الدالة split() مع استخدام حرف كفاصل في السلسلة المعطاة.

Python رمز:

text='Hello World Guru99'
#splits with character occurrence
print(text.split("l"))

الإخراج:

['He', '', 'o Wor', 'd Guru99']

في الكود أعلاه، يتم فصل السلسلة عند ظهور حرف يُستخدم كفاصل. الحرف المحدد هنا هو 'l'.

كيفية تقسيم السلسلة إلى قائمة؟

يمكن استخدام الدالة split() لتقسيم سلسلة نصية وطباعتها على شكل قائمة. هنا، يمكنك استخدام حلقة تكرارية لطباعة سلسلة نصية على شكل سلاسل فرعية مختلفة على شكل قائمة.

يوضح المثال التالي كيفية استخدام الدالة split().

Python رمز:

text='Hello World Guru99'
#splits with string in the form of list
list_1 = text.split()
for st in list_1:
    print(st)

الإخراج:

Hello
World
Guru99

في الكود أعلاه، يتم فصل السلسلة ثم إدراجها واحدة تلو الأخرى بمساعدة حلقة.

كيفية تقسيم سلسلة نصية باستخدام عامل التقسيم الأقصى؟

تُتيح الدالة split() أيضًا خيار تقسيم السلسلة إلى عدد أقصى من المرات. إذا لم يتم تهيئة القيمة، فإنها تُعطي القيمة الافتراضية -1.

لننظر في المثال التالي لاستخدام الدالة split().

Python رمز:

text='Hello World Guru99'
split_1 = text.split(',',2)
print(split_1)
text='Hello World Guru99'
split_1 = text.split(',',4)
print(split_1)

الإخراج:

['Hello World Guru99']
['Hello World Guru99']

في ما سبق Python رمز، يتم فصل السلسلة على أساس الحد الأقصى لعدد المثيلات.

كيفية استخدام دالة split() مع سلسلة فرعية في Python?

يمكن تعريف السلسلة الفرعية بأنها السلسلة الموجودة داخل السلسلة الرئيسية. ويمكن استخدام الدالة split() لتقسيم السلسلة الرئيسية بناءً على السلسلة الفرعية الموجودة فيها.

لننظر في المثال التالي لاستخدام الدالة split().

Python رمز:

text='Hello World Guru 99'
split_1 = text.split('Guru',2)
print(split_1[1])
text='Hello World Guru99'
split_1 = text.split('Guru',2)
print(split_1[0])

الإخراج:

99
Hello World

في الكود أعلاه، يتم فصل السلسلة الرئيسية بناءً على السلسلة الفرعية 'Guru' موجود في السلسلة المعطاة، لذا فإن الأجزاء التي تسبقه والتي تليه 'Guruيتم إرجاعها.

أهمية دالة split() في Python

يمكن أن تكون دالة split() مفيدة للغاية Python تُستخدم دالة split() في مشاريع استخراج البيانات النصية. ويمكن استخدامها بأشكال متعددة قابلة للتخصيص. فهي قادرة على تقسيم السلاسل النصية عند تحديد الفاصل. وحتى في حال عدم وجود الفاصل، يمكن استخدام دالة split() لتقسيم السلسلة النصية بناءً على المسافات البيضاء الموجودة فيها.

تقوم الدالة split() أيضًا بتقسيم السلسلة النصية حتى في وجود عدة فواصل. وهذا يُظهر مدى ديناميكية وأهمية الدالة split() في Python هو.

الأسئلة الشائعة

كلاهما يُرجع قائمة. تقوم الدالة split() بالعد من اليسار، بينما تقوم الدالة rsplit() بالعد من اليمين؛ ويختلفان فقط في قيمة maxsplit.

استخدم splitlines(); فهو يتعرف على \n و \r و \r\n عبر المنصات ويتعامل مع نهايات الأسطر المختلطة بشكل أفضل من split(“\n”).

لا، الدالة str.split() تأخذ فاصلًا ثابتًا واحدًا؛ بالنسبة لعدة فواصل في وقت واحد، استخدم re.split() مع نمط مثل [;,\s]+.

قسّمها إلى قائمة كلمات، واعكسها باستخدام [::-1]، ثم أعد دمجها: " ".join(“Hello World”.split()[::-1]) تُرجع "World Hello".

يؤدي تقسيم علامة التنصيص "" بدون فاصل إلى إرجاع []؛ بينما يؤدي تقسيم علامة التنصيص "","" إلى إرجاع [""]. عند عدم وجود وسيط، يقوم split() بدمج سلاسل المسافات البيضاء المتتالية.

تقوم الدالة split() بإرجاع جميع الأجزاء كقائمة؛ أما الدالة partition() فتقوم بالتقسيم عند الفاصل الأول، وتعيد مجموعة من ثلاثة أجزاء: قبل، الفاصل، بعد.

في مجال التعلم الآلي ومعالجة اللغة الطبيعية، تقوم الدالة split() بعملية التجزئة الأساسية، حيث تقسم النص إلى كلمات أو حقول لإعداد بيانات التدريب.

نعم. يقوم GitHub Copilot بإكمال استدعاءات split() تلقائيًا باستخدام وسيطات separator و maxsplit؛ وتكتب أدوات الذكاء الاصطناعي الآلية منطق التحليل وتشغل اختباراتك.

تلخيص هذه التدوينة بـ: