নেস্টেড ফর লুপ (Nested For Loop)

লিখেছেন: কাজী মুশফিকুর রহমান || সফটওয়্যার প্রকৌশলী, টেকনিয়াস (সফটওয়্যার নির্মাণ প্রতিষ্ঠান) || তারিখঃ 29 এপ্রি., 2024


একটি ফর লুপের মধ্যে আরেকটি ফর লুপ:

পাইথনে একটি ফর লুপের মধ্যে আরেকটি ফর লুপ ব্যবহৃত হতে পারে , তখন বাইরের লুপকে আউটার লুপ (Outer Loop) এবং ভেতরের লুপকে ইনার লুপ (Inner loop) বলে। এভাবে একটি লুপের মধ্যে একাধিক লুপ ব্যাবহার করা যায়। একটি ফর লুপের মধ্যে আরেকটি ফর লুপকে ‘নেস্টেড ফর লুপ’ বলে। আউটার লুপের প্রত্যেক ইটারেশনের জন্য (বিপরীতে) ইনার লুপ একবার এক্সিকিউট হয়।

কোড:

team_members = ['Ijharul Islam', 'Margubur Rahman', 'SD Shoriot', 'kazi Mushfiqur Rahman']

designation = ['Hafeze Quran', 'Aleme Deen', 'Backend engineer', 'Django developer']

# Outer for loop

for member in team_members:

     # Inner for loop

     for title in designation:

             print(member, ':', title)

 

এখন কোডটি রান করলে নিচের মত আউটপুট পাব।

আউটপুট:

Ijharul Islam : Hafeze Quran

Ijharul Islam : Aleme Deen

Ijharul Islam : Backend engineer

Ijharul Islam : Django developer

Margubur Rahman : Hafeze Quran

Margubur Rahman : Aleme Deen

Margubur Rahman : Backend engineer

Margubur Rahman : Django developer

SD Shoriot : Hafeze Quran

SD Shoriot : Aleme Deen

SD Shoriot : Backend engineer

SD Shoriot : Django developer

kazi Mushfiqur Rahman : Hafeze Quran

kazi Mushfiqur Rahman : Aleme Deen

kazi Mushfiqur Rahman : Backend engineer

kazi Mushfiqur Rahman : Django developer

 

উপরের কোডের প্রথম লাইনে আমাদের সফটওয়্যার টিমের মেম্বারদের একটি লিস্ট তৈরি করেছি, এবং দ্বিতীয় লাইনে তাদের পদবীর আরেকটি লিস্ট ডিফাইন করেছি। উভয় লিস্টে ৪টি করে আইটেম রয়েছে। তৃতীয় লাইনে একটি ফর লুপ (আউটার লুপ) ডিফাইন করেছি, যেখানে member ইটারেটরটি team_members নামক লিস্ট থেকে একটি করে আইটেম গ্রহণ করবে। যেহেতু লিস্টে ৪টি আইটেম রয়েছে, তাই এই লুপটি ৪ বার চলবে (অর্থাৎ ইটারেশন সংখ্যা হচ্ছে ৪)। পঞ্চম লাইনে আরেকটি ফর লুপ (ইনার লুপ) ডিফাইন করেছি, যেখানে title ইটারেটরটি designation লিস্ট থেকে একটি করে আইটেম গ্রহণ করবে। যেহেতু লিস্টে ৪টি আইটেম রয়েছে, তাই এই লুপটিও ৪ বার চলবে (অর্থাৎ ইটারেশন সংখ্যা হচ্ছে ৪)। সুতরাং আউটার লুপের প্রত্যেক ইটারেশনের জন্য ইনার লুপটি ৪ বার চলবে, তাহলে মোট ইটারেশন সংখ্যা হবে ১৬ (৪ * ৪ = ১৬ )।

 

১৬ টি ইটারেশন বিস্তারিত দেখানো হলো:

আউটার লুপের ফার্স্ট ইটারেশন:

যখন member = ‘Ijharul Islam’,                                          

তখন title = 'Hafeze Quran'                                 (ইনার লুপের ফার্স্ট ইটারেশন)

title = 'Aleme Deen',                                              (ইনার লুপের সেকেন্ড ইটারেশন)

title = 'Backend engineer',                                     (ইনার লুপের থার্ড ইটারেশন)

title = 'Django developer'                                       (ইনার লুপের ফোর্থ ইটারেশন)

 

আউটার লুপের সেকেন্ড ইটারেশন:

যখন member = 'Margubur Rahman',                                          

তখন title = 'Hafeze Quran'                                    (ইনার লুপের ফার্স্ট ইটারেশন)

title = 'Aleme Deen',                                                (ইনার লুপের সেকেন্ড ইটারেশন)

title = 'Backend engineer',                                       (ইনার লুপের থার্ড ইটারেশন)

title = 'Django developer'                                        (ইনার লুপের ফোর্থ ইটারেশন)

 

আউটার লুপের থার্ড ইটারেশন:

যখন member = 'SD Shoriot',                                          

তখন title = 'Hafeze Quran'                                    (ইনার লুপের ফার্স্ট ইটারেশন)

title = 'Aleme Deen',                                                 (ইনার লুপের সেকেন্ড ইটারেশন)

title = 'Backend engineer',                                       (ইনার লুপের থার্ড ইটারেশন)

title = 'Django developer'                                        (ইনার লুপের ফোর্থ ইটারেশন)

 

আউটার লুপের ফোর্থ ইটারেশন:

যখন member = 'kazi Mushfiqur Rahman',                                          

তখন title = 'Hafeze Quran'                                    (ইনার লুপের ফার্স্ট ইটারেশন)

title = 'Aleme Deen',                                                 (ইনার লুপের সেকেন্ড ইটারেশন)

title = 'Backend engineer',                                       (ইনার লুপের থার্ড ইটারেশন)

title = 'Django developer'                                        (ইনার লুপের ফোর্থ ইটারেশন)

 

পাইথন ইন্টারপ্রেটার (কম্পাইলার) একটি প্রোগ্রাম এক্সিকিউট করে এবং এটি ভেতরে ভেতরে এভাবেই কাজ করে