الانتقال إلى المحتوى الرئيسي

كيف يمكنني حساب عدد المسافات في سلسلة بيثون? طرق وأمثلة مفيدة

  • الأستاذة ابتكار بنو ليث
  • الأسئلة

بايثون هي لغة برمجة قوية توفر العديد من الأدوات للعمل مع السلاسل. إحدى المهام الشائعة عند العمل مع السلاسل هي حساب عدد المسافات في السلسلة. في هذه المقالة ، سنلقي نظرة على بعض الأساليب والأمثلة المفيدة التي ستساعدنا في حل هذه المشكلة.

الطريقة الأولى التي سننظر فيها هي استخدام طريقة العد (). تسمح لنا هذه الطريقة بحساب عدد تكرارات حرف معين أو سلسلة فرعية في سلسلة. نحتاج إلى تمرير حرف مسافة إلى الطريقة ، وستعيد الطريقة عدد المسافات في السلسلة. على سبيل المثال:

شارع = " مرحبا, كيف حالك?"

العد = شارع.العد ('')

طباعة ( عدد) # المخرجات 2

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

إذا كنت بحاجة إلى حساب عدد المسافات في سلسلة ، باستثناء مسافات البداية والنهاية ، يمكنك استخدام أساليب لستريب() و رستريب (). طريقة لستريب() يزيل جميع المسافات الرائدة في السلسلة ، وطريقة رستريب() يزيل جميع المسافات زائدة. ثم يمكنك استخدام طريقة العد () لحساب المسافات المتبقية. على سبيل المثال:

شارع = " مرحبا, كيف حالك? "

شارع = شارع . لستريب ().رستريب()

العد = شارع.العد ('')

طباعة ( عدد) # المخرجات 2

  1. كيف يمكنني حساب المسافات في سلسلة بيثون?
  2. طريقة الانقسام ()
  3. لحلقة
  4. طريقة العد ()
  5. من التعبيرات العادية
  6. وظيفة الانضمام ()
  7. أمثلة التعليمات البرمجية
  8. سؤال وجواب
  9. كيف يمكنني حساب عدد المسافات في خط?
  10. ما هي الطريقة التي يجب استخدامها لحساب المسافات في سلسلة في بيثون?
  11. هل من الممكن لحساب عدد من المسافات في سلسلة دون استخدام أساليب بايثون المدمج في?

كيف يمكنني حساب المسافات في سلسلة بيثون?

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

. ترجع هذه الدالة عدد مرات تكرار الحرف المحدد أو السلسلة الفرعية في السلسلة. في حالتنا ، سوف نبحث عن الثغرات.

النص = "مثال لسلسلة بمسافات"

العد = النص.العد ("")

طباعة ("عدد المسافات:" ، العد)

سيعود هذا الرمز:

عدد المساحات: 3

يمكننا أيضا استخدام حلقة لحساب المسافات في سلسلة. هنا مثال:

النص = "مثال لسلسلة بمسافات"

العد = 0

لشار في النص:

إذا شار == " ":

عدد + = 1

طباعة ("عدد المسافات:" ، العد)

سيعود هذا الرمز أيضا:

عدد المساحات: 3

، والتي ترجع جميع التطابقات مع النمط المحدد في السلسلة. يمكننا استخدام هذا للعثور على جميع المسافات وحساب عددها:

استيراد إعادة

النص = "مثال لسلسلة بمسافات"

العد = لين (إعادة.فيندال (""،نص))

طباعة ("عدد المسافات:" ، العد)

سيعود هذا الرمز أيضا:

عدد المساحات: 3

:

النص = "مثال لسلسلة بمسافات"

العد = لين (نص.انقسام (" " )) - 1

طباعة ("عدد المسافات:" ، العد)

سيعود هذا الرمز أيضا:

عدد المساحات: 3

الآن لديك عدة طرق لحساب المسافات في سلسلة بيثون. يمكنك اختيار الطريقة الأكثر ملاءمة لمهمتك. حظا سعيدا في البرمجة!

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

يبدو بناء جملة طريقة الانقسام () كما يلي:

  • سلسلة.انقسام()
  • سلسلة.انقسام (فاصل)

عند استدعاء الطريقة بدون وسيطات ، سيتم تقسيم السلسلة بمسافة:

"'بايثون

سلسلة = "مثال على تقسيم سلسلة إلى كلمات"

كلمة تقسيم = سلسلة.انقسام()

طباعة (كلمة تقسيم)

"`

خاتمة:

"`

['مثال' ، 'تقسيم' ، 'سلاسل' ، ' إلى ' ، 'كلمات']

"`

يمكن استخدام طريقة الانقسام () مع محددات مختلفة ، مثل فاصلة أو فاصلة منقوطة:

"'بايثون

السلسلة = "العنصر 1 ، العنصر 2 ، العنصر 3"

سلاسل فرعية = سلسلة.انقسام ("،")

طباعة (سلاسل فرعية)

"`

خاتمة:

"`

['العنصر 1' ، 'العنصر 2' ، 'العنصر 3']

"`

إذا لم يتم العثور على فاصل في السلسلة ، فإن طريقة الانقسام () ترجع السلسلة الأصلية:

"'بايثون

سلسلة = "هذه سلسلة بدون فاصل"

سلاسل فرعية = سلسلة.انقسام ("،")

طباعة (سلاسل فرعية)

"`

خاتمة:

"`

['هذه سلسلة بدون فاصل']

"`

تدعم طريقة الانقسام () أيضا استخدام قيم المحدد السالب ، والتي سيتم البحث عنها من اليمين إلى اليسار:

"'بايثون

السلسلة = "مثال-تقسيم-سلاسل-إلى كلمات"

سلاسل فرعية = سلسلة.انقسام (" -")

طباعة (سلاسل فرعية)

"`

خاتمة:

"`

['مثال' ، 'تقسيم' ، 'سلاسل' ، ' إلى ' ، 'كلمات']

"`

طريقة الانقسام () مفيدة جدا عند حساب عدد المسافات في سلسلة. يكفي تقسيم السلسلة بالمسافة باستخدام طريقة الانقسام () وحساب عدد العناصر المستلمة في القائمة الناتجة:

"'بايثون

سلسلة = "هذا مثال على سلسلة ذات مسافات"

عدد المشاكل = لين(سلسلة.سبليت()) — 1

طباعة (عدد البكسل)

"`

الناتج:

"`

4

"`

كما ترى من المثال ، حصلنا على عدد المسافات في السطر يساوي 4.

طريقة الانقسام() هي طريقة ملائمة لتقسيم سلسلة إلى سلاسل فرعية وفقا لفاصل معين ، واستخدام السلاسل الفرعية الناتجة لإجراء عمليات مختلفة ، على سبيل المثال ، حساب عدد المسافات في سلسلة.

من أجل حلقة

حلقة في بيثون هو وسيلة مريحة لتكرار تنفيذ كتلة معينة من التعليمات البرمجية عدد محدد من المرات أو لكل عنصر في التسلسل.

هنا هو بناء الجملة من أجل حلقة:

للمتغير في التسلسل:
 كتلة التعليمات البرمجية

سيتم تعيين العنصر التالي من التسلسل للمتغير في كل مرة ، وسيتم تكرار تنفيذ كتلة التعليمات البرمجية لكل عنصر.

لنلق نظرة على مثال لاستخدام حلقة لحساب عدد المسافات في سلسلة:

ق = " مرحبا العالم!"

العد = 0

لشار في الصورة:

إذا شار == " ":

عدد + = 1

طباعة ("عدد المسافات:" ، العد)

زيادة بنسبة 1. في نهاية الحلقة ، يتم عرض عدد المسافات.

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

طريقة العد () هي إحدى الطرق لحساب عدد المسافات في سلسلة في بايثون. يسمح لك بالعثور على عدد مرات حدوث حرف معين أو سلسلة فرعية في سلسلة.

يبدو بناء جملة طريقة العد () كما يلي:

سلسلة.العد (سلسلة فرعية ، مؤشر البداية ، مؤشر النهاية)

عندما تكون السلسلة هي السلسلة المصدر ، تكون السلسلة الفرعية حرفا أو سلسلة فرعية ، ويجب حساب عدد مرات حدوثها ، والفهرس الأولي (الوسيطة الاختيارية) هو فهرس الحرف الذي يبدأ البحث منه في السلسلة ، والفهرس النهائي (الوسيطة الاختيارية) هو فهرس الحرف الذي سيتم إنهاء البحث عليه.

على سبيل المثال ، لحساب عدد المسافات في سلسلة ، يمكنك استخدام التعليمات البرمجية التالية:

سلسلة = " مرحبا العالم! كيف حالك؟"

عدد المشاكل = سلسلة.العد ("")

طباعة (عدد البكسل) # المخرجات: 3

في هذا المثال ، باستخدام طريقة العد () ، وجدنا عدد المسافات في السلسلة "مرحبا بالعالم! كيف حالك؟"وحفظه في عدد متغير من العينات. ثم كانت قيمة هذا المتغير الإخراج ، مما أعطى النتيجة 3.

التعبيرات العادية

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

للعمل مع التعبيرات العادية في بيثون ، يتم استخدام وحدة إعادة. توفر هذه الوحدة وظائف وطرق مختلفة للعمل مع التعبيرات العادية.

لبدء العمل مع التعبيرات العادية ، تحتاج إلى استيراد وحدة إعادة. مثال:

استيراد إعادة

بعد ذلك ، يمكنك استخدام وظائف وأساليب وحدة إعادة للبحث ، وتحديد ، وتعديل النص باستخدام التعبيرات العادية.

مثال على استخدام تعبير عادي للعثور على مسافات في سلسلة:

استيراد إعادة

النص = " هذه سلسلة بها مسافات."

نمط = " "

النتيجة = إعادة.فيندال (نمط ، نص)

طباعة ("عدد المسافات:" ، لين (نتيجة))

في هذا المثال ، نستخدم وظيفة فيندال () من وحدة إعادة للبحث عن جميع تكرارات المسافات في سلسلة. ترجع طريقة فيندال() قائمة بجميع التطابقات التي تم العثور عليها. ثم نقوم بإخراج طول هذه القائمة ، وهو ما يساوي عدد المسافات في السلسلة.

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

التعبيرات العادية مفيدة جدا في معالجة وتحليل البيانات النصية. إنها تبسط بشكل كبير البحث عن النص وتعديله وفقا للقوالب المحددة.

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

وظيفة الانضمام ()

وظيفة الانضمام () هي طريقة فئة سلسلة في لغة برمجة بايثون. يتم استخدامه لدمج عناصر التسلسل في سلسلة. هذه الوظيفة مفيدة للغاية عندما تحتاج إلى توصيل السلاسل باستخدام فاصل معين.

بناء جملة وظيفة الانضمام () كما يلي:

فاصل.تاريخ (تسلسل)

أين:

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

نتيجة وظيفة الانضمام () هي سلسلة جديدة تتكون من عناصر تسلسل مرتبطة بفاصل.

مثال على استخدام وظيفة الانضمام () لدمج عناصر القائمة مع فاصل "،":

قائمتي = ['التفاح' ، 'الموز' ، 'الكرز']

النتيجة ='،'.انضم(قائمتي)

طباعة (نتيجة)

النتيجة:

التفاح والموز والكرز

في هذا المثال ، يتم الحصول على سلسلة "التفاح والموز والكرز "من خلال الجمع بين عناصر القائمة" قائمتي "باستخدام الفاصل" ، " باستخدام وظيفة الانضمام ().

يمكن أيضا استخدام وظيفة الانضمام () لدمج أحرف سلسلة أو كائن آخر قابل للتكرار دون تحديد فاصل.

مثال على استخدام وظيفة الانضمام () لدمج أحرف السلسلة:

سلسلتي = "مرحبا"

النتيجة =".انضم(سلسلتي)

طباعة (نتيجة)

النتيجة:

أهلاً

في هذا المثال ، تظل السلسلة" مرحبا " دون تغيير ، نظرا لأن الكائن القابل للتكرار الذي تم تمريره هو سلسلة لا تحتوي على محددات.

وبالتالي ، تسمح لك وظيفة الانضمام () بدمج عناصر التسلسل في سطر جديد باستخدام الفاصل المحدد أو بدونه. يمكن أن يكون هذا مفيدا عند إنشاء رسائل نصية أو إنشاء ملفات كسف.

أمثلة التعليمات البرمجية

يمكن استخدام طرق وأساليب مختلفة لحساب عدد المسافات في خط في بايثون. فيما يلي بعض أمثلة التعليمات البرمجية:

مثال 1:

مواطنه العد_المساحات (شارع):

العد = 0

لشار في شارع:

إذا شار ==' ':

عدد + = 1

عد العودة

طباعة (عدد المسافات ("مثال لسلسلة بمسافات")) # الإخراج: 3

المثال 2:

مواطنه العد_المساحات (شارع):

شارع العودة.العد ('')

طباعة (عدد المسافات ("مثال لسلسلة بمسافات")) # الإخراج: 3

المثال 3:

مواطنه العد_المساحات (شارع):

عودة لين ([شار لشار في شارع إذا شار ==''])

طباعة (عدد المسافات ("مثال لسلسلة بمسافات")) # الإخراج: 3

لحساب عدد عناصر القائمة ، حيث يكون كل عنصر مسافة من السلسلة الأصلية.

كل هذه الأمثلة تعطي نفس النتيجة ويمكن استخدامها اعتمادا على تفضيلات المبرمج.

سؤال وجواب

كيف يمكنني حساب عدد المسافات في خط?

في بايثون ، يمكنك حساب عدد المسافات في سلسلة باستخدام طريقة العد (). للقيام بذلك ، قم بتمرير حرف "الفضاء" كوسيطة لهذه الطريقة.

ما هي الطريقة التي يجب استخدامها لحساب المسافات في سلسلة في بيثون?

لحساب المسافات في سلسلة في بيثون ، يمكنك استخدام طريقة العد (). يسمح لك بحساب عدد تكرارات حرف في سلسلة.

هل من الممكن لحساب عدد من المسافات في سلسلة دون استخدام أساليب بايثون المدمج في?

نعم ، يمكنك حساب عدد المسافات في السطر دون استخدام طرق بايثون المضمنة. للقيام بذلك ، يمكنك استخدام ل حلقة ، والتي سوف تتكرر على كل حرف في السلسلة وحساب عدد المسافات.