কম্পিউটার টিউটোরিয়াল

কি রানটাইমে পাইথন for লুপের রেঞ্জ (উচ্চ সীমা) পরিবর্তন করা যায়

না, একবার range() অবজেক্ট তৈরি হলে এর উচ্চ সীমা (upper limit) পরিবর্তন করা যায় না। range একটি ইমিউটেবল সিকোয়েন্স।

সমস্যা

# এটি কাজ করবে না
for i in range(lower_limit, higher_limit, step_size):
    # some code
    if i == 10:
        higher_limit = higher_limit + 5  # range অবজেক্ট এфек্ট হবেনা

সমাধান: while লুপ ব্যবহার করুন

i = lower_limit
while i < higher_limit:
    # some code
    if i == 10:
        higher_limit = higher_limit + 5  # এখন কাজ করবে
    i += step_size

ব্যাখ্যা: while লুপে কন্ডিশন প্রতিবার ইভ্যালুয়েট হয়, তাই higher_limit পরিবর্তন করলে লুপের আচরণ পরিবর্তন হয়।

অলтернаেটিভ: itertools.count()

import itertools

for i in itertools.count(lower_limit, step_size):
    if i >= higher_limit:
        break
    # code
    if i == 10:
        higher_limit += 5
  1. পাইথন for লুপে Tkinter বাটন তৈরি করা

  2. টکইন্টার (Tkinter) বাটনের কমান্ড মেথড ডাইনামিকভাবে পরিবর্তন করা

  3. পাইথনে ২ডি ম্যাট্রিক্সে ডান ও নিচে চলা সীমাবদ্ধ রেখে সর্বোচ্চ কয়েন সংগ্রহ করার প্রোগ্রাম

  4. কয়েন চেঞ্জ সমস্যার পাইথন প্রোগ্রাম