কেন তালিকার মতো অভিধানের মতো নিরাপদ "get" পদ্ধতি নেই?
>>> d = {'a':'b'}
>>> d['a']
'b'
>>> d['c']
KeyError: 'c'
>>> d.get('c', 'fail')
'fail'
>>> l = [1]
>>> l[10]
IndexError: list index out of range
l[10:11]
পরিবর্তে সূচিপত্র না বাড়িয়ে আপনি তালিকার বাইরে সর্বদা একটি খালি সাবলিস্ট পেতে পারেন l[10]
। () সাবলিস্টে উপস্থিত থাকলে কাঙ্ক্ষিত উপাদান থাকবে)
.get
। এটি সমান l[i] if i < len(l) else default
, তবে আরও পঠনযোগ্য, আরও সংক্ষিপ্ত এবং i
এটি পুনরায় গণনা না করেই একটি অভিব্যক্তি হওয়ার অনুমতি দেবে
None
যদি এটি উপস্থিত না থাকে। এটি বললে ভাল লাগত x = expensive().get(0, None)
তাই আমাকে ব্যয়বহুল রিটার্ন অস্থায়ী ভেরিয়েবলের মধ্যে ফেলতে হবে না।