আপনার বন্ধু Yaʻqūb শহরের সবচেয়ে ব্যস্ত ডেলিতে কাউন্টারে কাজ করেন। ক্ষুধার্ত গ্রাহকদের অন্তহীন সারির জন্য তিনি অর্ডার কাটেন, ওজন করেন আর মুড়ে দেন। কাজ যাতে দ্রুত এগোতে থাকে, সেজন্য প্রত্যেক গ্রাহক এসে একটি করে নম্বরযুক্ত টিকিট নিয়ে থাকেন।
পরের জনকে ডাকার সময় হলে Yaʻqūb তাঁর নম্বরটি জোরে পড়ে শোনান। সবাই যাতে সেটি স্পষ্টভাবে শুনতে পায়, তাই তিনি নম্বরটি সর্বদা পুরো ইংরেজি শব্দে বলেন।
একটি সংখ্যা দেওয়া হলে, আপনার কাজ হলো সংখ্যাটিকে ইংরেজি শব্দে ঠিক সেভাবেই প্রকাশ করা, যেভাবে আপনার বন্ধু এটি মুখে উচ্চারণ করবে। Yaʻqūb 0 থেকে 999,999,999,999 পর্যন্ত সংখ্যা ব্যবহার করার আশা করেন।
উদাহরণ:
কখনও কখনও এক্সেপশন রেইজ করা প্রয়োজন হয়। এটি করার সময় আপনার সর্বদা একটি অর্থবহ এরর বার্তা যোগ করা উচিত, যাতে বোঝা যায় এররটির উৎস কী। এতে আপনার কোড আরও পাঠযোগ্য হয় এবং debugging-এ যথেষ্ট সাহায্য করে। যেসব পরিস্থিতিতে আপনি জানেন যে এররের উৎস একটি নির্দিষ্ট টাইপ হবে, সেখানে আপনি বিল্ট-ইন এরর টাইপগুলোর একটি রেইজ করা বেছে নিতে পারেন, তবে তবুও একটি অর্থবহ বার্তা যোগ করা উচিত।
এই নির্দিষ্ট অনুশীলনীতে say()-এ ইনপুট দেওয়া সংখ্যাটি সীমার বাইরে হলে raise স্টেটমেন্ট ব্যবহার করে একটি ValueError “থ্রো” করতে হবে। টেস্ট পাস হবে শুধু তখনই, যখন আপনি exception টি raise করবেন এবং তার সঙ্গে একটি বার্তাও দেবেন।
বার্তাসহ একটি ValueError রেইজ করতে, বার্তাটি exception টাইপের আর্গুমেন্ট হিসেবে লিখুন:
# if the number is negative
raise ValueError("input out of range")
# if the number is larger than 999,999,999,999
raise ValueError("input out of range")
Exercism-এ সাইন আপ করুন, Python ট্র্যাকের 17টি কনসেপ্ট146টি অনুশীলনী আর সত্যিকারের মানুষের মেন্টরিং দিয়ে শিখুন ও দক্ষ হয়ে উঠুন, সম্পূর্ণ বিনামূল্যে।