البرمجة

تتبع مواقع الكلمات في الجمل بلغة Python

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

أولاً وقبل كل شيء، يجب علينا تعريف قائمة جديدة لتخزين مواقع الكلمات. ثم، نقوم بفحص كل كلمة في الجملة، وإذا كانت الكلمة لم تظهر في الجملة من قبل، فإننا نقوم بإضافة موقعها إلى القائمة، وإذا كانت قد ظهرت من قبل، فإننا نأخذ موقعها من القائمة. الأمر الذي سيؤدي إلى النتيجة المطلوبة.

اليك كود محسن:

python
sent = input("أدخل جملتك: ").lower() sentlist = sent.split() if len(sentlist) < 1: print("لم يتم إدخال قيمة.") exit() positions = [] # قائمة لتخزين مواقع الكلمات for word in sentlist: if word not in positions: positions.append(word) print("الكلمات في الجملة:") print(sentlist) print("مواقع الكلمات:") print(positions)

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

المزيد من المعلومات

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

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

بعد ذلك، يتم تقسيم جملة الإدخال إلى قائمة من الكلمات باستخدام split()، حيث يتم فصل الكلمات بناءً على الفراغات.

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

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

يتم استخدام الحلقة for لتفحص كل كلمة في القائمة sentlist. إذا لم تظهر الكلمة في القائمة positions، يتم إضافة موقعها إلى القائمة. إذا كانت الكلمة قد ظهرت بالفعل، يتم استخدام append لإضافة موقعها من القائمة.

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

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

مقالات ذات صلة

زر الذهاب إلى الأعلى
إغلاق

أنت تستخدم إضافة Adblock

يرجى تعطيل مانع الإعلانات حيث أن موقعنا غير مزعج ولا بأس من عرض الأعلانات لك فهي تعتبر كمصدر دخل لنا و دعم مقدم منك لنا لنستمر في تقديم المحتوى المناسب و المفيد لك فلا تبخل بدعمنا عزيزي الزائر