পাইথনে আইটেমগুলি এড়ানো হচ্ছে


159

আমার লুপ চলছে, তবে লুপের ভিতরে ব্যতিক্রমগুলি উত্থাপিত হওয়ার সম্ভাবনা রয়েছে। এটি অবশ্যই আমার প্রোগ্রামটি একসাথে বন্ধ করবে। এটি রোধ করার জন্য আমি ব্যতিক্রমগুলি ধরি এবং সেগুলি পরিচালনা করি। তবে তারপরে বাকী পুনরুক্তি চলে যদিও একটি ব্যতিক্রম ঘটেছিল। আমার except:ক্লজটিতে কী কীওয়ার্ড আছে যা কেবলমাত্র বর্তমানের পুনরাবৃত্তিটি বাদ দিতে পারে?


4
গ্রহণযোগ্য উত্তর (ব্যবহার continue) কীভাবে ব্যতিক্রমগুলি ধরে তা দেখুন না , তবে তা গৃহীত হয়েছিল। সুতরাং, প্রশ্নটি সত্যই, সত্যিই বিভ্রান্তিকর।
এস .লট

@ এস.লট ব্যতিক্রমটি ধরতে আমার কীওয়ার্ডের দরকার নেই, আমি কেবল মোট কোডের সাধারণ প্রবাহ সম্পর্কে কথা বলছিলাম।
The.Anti.9

@ The.Anti.9। কি? প্রথমে আপনি বলেছিলেন "আমি ব্যতিক্রমগুলি ধরতে চাই"। এখন আপনি বলছেন "ব্যতিক্রম ধরতে আমার কীওয়ার্ডের দরকার নেই"। আপনি কি কোনওভাবে এটি পরিষ্কার করতে পারেন?
এস .লট

1
@ S.Lott। মূল
শব্দটির

1
আমি প্রশ্নটির উত্তর দিয়েছি এটি গ্রহণযোগ্য উত্তরের সাথে আরও ভাল মেলে।
জিলিস ডি বুদ্ধি

উত্তর:


381

আপনি অবিরত খুঁজছেন ।


31
এটি অবশ্যই আমি প্রত্যক্ষভাবে দেখা সবচেয়ে সাফল্যের জন্য একটি উত্তর হতে হবে!
অস্টিন এ

70
আসল প্রশ্ন: 'লুকিং' পাইথোনিকের 'জি' কে বের করে দিচ্ছে?
ম্যাসন গার্ডনার


17

এটার মতো কিছু?

for i in xrange( someBigNumber ):
    try:
        doSomethingThatMightFail()
    except SomeException, e:
        continue
    doSomethingWhenNothingFailed()

1
পাস করার পরিবর্তে ব্যবহারের জন্য সম্পাদিত।
জিলিস ডি বুদ্ধি

16

চালিয়ে যাওয়ার উদাহরণ:

number = 0

for number in range(10):
   number = number + 1

   if number == 5:
      continue    # continue here

   print('Number is ' + str(number))

print('Out of loop')

আউটপুট:

Number is 1
Number is 2
Number is 3
Number is 4
Number is 6 # Note: 5 is skipped!!
Number is 7
Number is 8
Number is 9
Number is 10
Out of loop


5

এই সুনির্দিষ্ট ব্যবহারের ক্ষেত্রে ব্যবহারটি try..except..elseসবচেয়ে পরিষ্কার সমাধান, elseকোনও ব্যতিক্রম না উত্থাপন করা হলে এই ধারাটি কার্যকর করা হবে।

দ্রষ্টব্য: elseধারাটি অবশ্যই সমস্ত exceptধারা অনুসরণ করবে

for i in iterator:
    try:
        # Do something.
    except:
        # Handle exception
    else:
        # Continue doing something
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.