مكتشف الأنماط
جزء من قسم الأساسيات في رحلة Python على Coddy. الدرس 76 من 77.
التحدي
متوسطأنشئ دالة باسم find_occurrences تقوم بما يلي:
- تستقبل وسيطين من نوع السلسلة النصية:
textوpattern - تحسب عدد مرات ظهور
patternفيtext، بما في ذلك حالات التداخل - تُعيد صفًا يحتوي على:
- قيمة منطقية تشير إلى ما إذا كان النمط قد عُثر عليه (True/False)
- عدد مرات ظهور النمط
- قائمة بمواضع البداية التي عُثر فيها على النمط
على سبيل المثال، إذا كانت قيمة text هي "abababab" وكانت قيمة pattern هي "aba"، فينبغي أن تُعيد دالتك (True, 3, [0, 2, 4])، لأن "aba" تظهر عند المواضع 0 و2 و4.
إذا لم يُعثر على النمط، فأعِد (False, 0, []).
حول الكلمة المفتاحية pass: سترى pass في الشيفرة الافتراضية. إنها كلمة مفتاحية في Python تعني "do nothing"، وتُستخدم كعنصر نائب عندما تتطلب Python كتلة شيفرة ذات مسافة بادئة (مثلًا داخل دالة). ينبغي أن تستبدل pass بشيفرة الدالة الفعلية.
جرّب بنفسك
def find_occurrences(text, pattern):
# اكتب الكود الخاص بك هنا
pass
# اقرأ المدخلات
text = input()
pattern = input()
# استدعِ دالتك واطبع النتيجة
result = find_occurrences(text, pattern)
print(result)جميع دروس الأساسيات
4المعاملات - الجزء الثاني
المعاملات المنطقية - الجزء الأولالمعاملات المنطقية - الجزء الثانيمراجعة - المنطق البسيطالمعاملات المنطقية - الجزء الثالثالمعاملات المنطقية - الجزء الرابع7حاسبة تقسيم الفاتورة
رسالة الترحيبالحصول على المدخلات2المتغيرات
الأرقامالنصوص (String)القيم المنطقية (Boolean)قواعد التسميةالمتغيرات الفارغةمراجعة - تهيئة المتغيرات8الحلقات التكرارية
حلقة Forحلقة Whileجملة Breakجملة Continueمراجعة - المضروب (Factorial)دالة Rangeالحلقات المتداخلةمراجعة - Dynamic Input3المعاملات - الجزء الأول
المعاملات الحسابيةمعامل باقي القسمةاختصارات العمليات الحسابيةمراجعة - العمليات الرياضية البسيطةمعاملات المقارنة6أساسيات الإدخال والإخراج
الإخراجالإخراج مع المتغيراتالإدخالتحويل الأنواعمراجعة - حتى 120مراجعة - صح أم خطأتدرّب بنفسك: مترجم Python عبر الإنترنت