• 0

كيف أتأكد من أن سلسلة نصية تنتهي بامتداد معين من قائمة في بايثون؟

لدي قائمة بها مجموعة من الامتدادات وأريد التأكد ما إذا كانت سلسلة نصية معينة تنتهي بإحدى هذه الامتدادات للقيام بأمور معين، فما الطريقة الصحيحة لفعل ذلك في بايثون؟

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

يوجد في لغة بايثون العديد من الطرق للتأكد من ذلك فيمكنك على سبيل المثال استخدام تابع endswith ومن ثم تمرر tuple بها جميع الامتدادات التي تريد التأكد منها وسيتم إرجاع قيمة منطقية حسب الشرط كما في المثال التالي:

>>> 'example.txt'.endswith(('.txt', '.doc', '.pdf'))
True

وتوجد طريقة أخرى لفعل ذلك وهي أطول وأكثر تفصيلا من الطريقة الأولى وذلك عن طريق فصل السلسلة النصية أولا ومن ثم مقارنة الجزء الأخير منها مع القائمة كما في المثال التالي:

>>> import os
>>> extensions = set(['.txt', '.doc', '.pdf'])
>>> file_name = 'example.txt'
>>> extension = os.path.splitext(file_name)[1]
>>> extension in extensions
True

 

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة

يجب أن تكون عضوًا لدينا لتتمكّن من التعليق

انشاء حساب جديد

يستغرق التسجيل بضع ثوان فقط


سجّل حسابًا جديدًا

تسجيل الدخول

تملك حسابا مسجّلا بالفعل؟


سجّل دخولك الآن