بايثونالدالة rindex()
تعريفها
تبحث في النص الذي قام باستدعائها عن رقم أول خانة يوجد عندها النص الذي نمرره لها مكان الباراميتر sub
و ترجعه.
عملية البحث التي تجريها هذه الدالة تبدأ بشكل عكسي ( Reversed ) من آخر النص الذي قام باستدعائها إلى أوله.
الفرق بينها و بين الدالة index()
أنها تبدأ عملية البحث من آخر خانة في النص الذي قام باستدعائها رجوعاً إلى أول خانة فيه.
بناؤها
rindex(sub[, start[, end]])
باراميترات
sub
عبارة عن نص عادي نوعهstr
و هو النص الذي نريد البحث عنه.start
باراميتر إختياري، مكانه يمكن تمرير رقم الخانة التي سيتم إيقاف البحث قبلها.end
باراميتر إختياري، مكانه يمكن تمرير رقم الخانة التي سيتم بدأ البحث عندها.
قيمة الإرجاع
ترجع رقم أول خانة في النص الذي قام باستدعائها يوجد عندها النص الذي نمرره لها مكان الباراميتر sub
.
في حال لم يتم العثور على النص المراد البحث عنه فإنها ترمي الإستثناء ValueError.
مثال
# s هنا قمنا بتعريف متغير نصي إسمه s = 'Python is a programming language. Python is easy to learn.' # و بالتالي سيتم طباعة 0 'P' يوجد عندها النص s هنا قمنا بطباعة رقم أول خانة في المتغير print(s.rindex('P')) # و بالتالي سيتم طباعة 0 'Python' يوجد عندها النص s هنا قمنا بطباعة رقم أول خانة في المتغير print(s.rindex('Python')) # مع الإشارة إلى أننا بدأنا عملية البحث من آخر خانة وصولاً إلى الخانة رقم 10 و بالتالي سيتم طباعة 34 'Python' يوجد عندها النص s هنا قمنا بطباعة رقم أول خانة في المتغير print(s.rindex('Python', 10)) # -1 و بما أنه لا يوجد هذه الكلمة سيتم طباعة .'Java' يوجد عندها النص s هنا قمنا بطباعة رقم أول خانة في المتغير print(s.rindex('Java'))
النتيجة
34
34
ValueError: substring not found