আমার ifকিছু পরীক্ষা করা উচিত বৈধ কিনা বা কেবল এটি tryকরার জন্য এবং ব্যতিক্রমটি ধরা?
- এমন কোনও শক্ত দলিল যা বলছে যে একদিকে অগ্রাধিকার দেওয়া হয়েছে?
- এক উপায় কি আরও অজগর ?
উদাহরণস্বরূপ, আমার উচিত:
if len(my_list) >= 4:
x = my_list[3]
else:
x = 'NO_ABC'
বা:
try:
x = my_list[3]
except IndexError:
x = 'NO_ABC'
কিছু চিন্তা ...
পিইপি 20 বলেছেন:
ত্রুটিগুলি কখনই নিঃশব্দে কাটানো উচিত নয়।
স্পষ্টভাবে নিরব না হলে।
একটি tryপরিবর্তে এর পরিবর্তে একটি ব্যবহার করে ifনিঃশব্দে যাওয়ার সময় ত্রুটি হিসাবে ব্যাখ্যা করা উচিত? এবং যদি তাই হয়, আপনি কি এটিকে এভাবে ব্যবহার করে সুস্পষ্টভাবে চুপচাপ করছেন, সুতরাং এটি ঠিক আছে?
আমি এমন পরিস্থিতিতে উল্লেখ করছি না যেখানে আপনি কেবল 1 উপায়ে কাজ করতে পারেন; উদাহরণ স্বরূপ:
try:
import foo
except ImportError:
import baz
if index in mylistপরীক্ষাগুলি ওয়েদার সূচীটি আমার তালিকার একটি উপাদান, কোনও সম্ভাব্য সূচক নয়। আপনিif index < len(mylist)পরিবর্তে চান ।