DEV Community

Cover image for Conditions (If-else-elif) Part-08
Monirul Islam
Monirul Islam

Posted on

Conditions (If-else-elif) Part-08

ছোট বেলায় আমি সন্ধার পর দেরি করে বাড়িতে যেতাম। প্রায় প্রতিদিন। এই জিনিস টা আমার মা ঠিক পছন্দ করে না। একদিন তো একটা warning দিয়েই দিলেন।

“কালকে থেকে যদি সন্ধ্যার আগে তুই বাড়ি না আসিস, তাহলে তোর খবর আছে।”

“আচ্ছা ঠিক আছে।”

“তোর না কালকে বললাম সন্ধ্যার আগে বাড়িতে আসবি। সন্ধ্যা কখন হয়েছে কোন খবর আছে”

“আর যদি ঠিক সময় মত চলে আসি তাহলে”

“তাহলে তোকে ২টা ডিম সিদ্ধ করে খেতে দিব”

পরের দিন সন্ধ্যাবেলা

অনেকদিনের অভ্যাস এত সহজে যায়। তারপর শুরু হল উত্তম মধ্যম। এভাবেই চলছে কিছুদিন। কোন কাজ হল।

তখন আমার মা বলল আমাকে একদিন ডেকে বলল

“শোন আমি একটা সিদ্ধান্ত নিয়েছি।”

“কি সিন্ধান্ত”। আমি একটু চিন্তিত। না যা জানি কি বলে বসে।

“কালকে থেকে তুই সন্ধ্যা হওয়ার ৫ মিনিটের মধ্যে বাড়িতে আসিস তাহলে তোকে ৫ টাকার ২ টা কেক দেওয়া হবে।”

আমি তো শুনেই সেই খুশি।

“থাম অত খুশি হওয়ার দরকার নেই। আর ১৫ মিনিট এর মধ্যে আছিস তাহলে ১ টা কেক পাবি”

“বাহ ভাল তো”

“আরেক টা জিনিস আছে। উপরের কোন টায় করতে না পারিস তাহলে কেক তো পাবিই না। সাথে তোর রাতে খাওয়া ও বন্ধ।”

“এই টা কিন্তু ঠিক হচ্ছে না।”

“ঠিক নাকি ভুল আমি সেটা বুঝব। তোর কাছে অপশন দিয়ে দিছি তোর যেই টা ভালো লাগবে সেইটা করবি ”

এখান থেকে কি কিছু বুঝতে পারছেন? আমার কপালে দুঃখ আছে। শর্ত অনুযায়ী কাজ না করলে তো থাকবেই। চাকরির ক্ষেত্রে চাকরিও চলে যেতে পারে।

এখানে লক্ষ্য করলে বুঝতে পারবেন যে,

প্রথম দৃশ্যে যদি লক্ষ করেন তাহলে খেয়াল করবেন এখানে কাজ ২ টা কিন্তু হবে যে কোন একটা। কোন কাজ টা হবে সেটা নির্ভর করছে একট শর্তের উপর (সন্ধ্যার আগে বাড়ি ফিরছি কিনা)।

আমি যেহেতু ওই দিন বাড়ি সময় মত ফিরতে পারি নি এই জন্য। আমার ক্ষেত্রে প্রথম কাজ টাই হয়েছে । উত্তম মধ্যম দিয়েছে আরকি।

এই একই বিষয়টা পাইথনেও আছে। নিচের কোড টা লক্ষ্য করুন

if condition:
    # condition সত্য হলে এই নিচের কোড রান হবে
    # expression
else:
    # condition সত্য না হলে বা মিথ্যা হলে এই নিচের কোড রান হবে
    # expression
Enter fullscreen mode Exit fullscreen mode

এখানে if হল পাইথনের কিওয়ার্ড। if এর পরে একটা condition হবে এবং এই condition এর উপর ভিত্তি করে কোন ব্লকের কোড রান হবে তা নির্ধারিত হবে। condition সত্য হলে প্রথম ব্লক টা রান হবে আর সত্য না হলে পরবর্তী else ব্লকে চলে যাবে। নিচের কোড টা রান করলেই বুঝতে পারবেন।

if 1==1: # ১ আর ১ সমান
    print('Condition is true')
else:
    print('Condition is false')
Enter fullscreen mode Exit fullscreen mode

বিঃদ্রঃ পাইথন অপারেটরের মাধ্যমে এখানে condition চেক করতে হবে।

এবার আসুন দ্বিতীয় দৃশ্যে

এখানে কিন্তু ২ টা condition আছে। এখন কি করবেন? খুব সহজ। আপনি একটু ভাবলেই পেরে যাবেন। আগে একটু ভাবেন।

এখানে প্রথম condition এর জন্য উপরে মত করে if else ব্যবহার করব। তারপর else ব্লক এর ভিতরে ২য় condition এর জন্য if else লিখবে। confusing লাগছে? নিচের কোড টা দেখলে বুঝতে পারবেন।

if 1==4: # 1st layer condition
    print('1st Condition is true')
else:
    if 2*3 == 6: # 2nd layer condition
        print('2nd Condition is true')
    else: 
        print('No Condition is true')
Enter fullscreen mode Exit fullscreen mode

উপরে কোড কে পরিবর্তন করে নিজের মত করে কোন condition দেখতে পারেন।

কাজঃ আপনার এই if else ব্যবহার করে একটা Marking Grading System বানিয়ে ফেলুন। আর কোডের screenshot কমেন্ট এ শেয়ার করুন।

উপরে কোডে লক্ষ্য করলে দেখবেন এখানে 1st layer condition চেক করা পর 2nd layer condition এর চেক করছে । এখানে চাইলে একটু ভালোভাবে কোড লেখা যায়। নিচের কোড টা দেখুন

if 1==4:
    print('1st Condition is true')
elif 2*3 == 6:
    print('2nd Condition is true')
else: 
    print('No Condition is true')
Enter fullscreen mode Exit fullscreen mode

এর আগের লেখা কোড আর এই কোডের আউটপুট একই আসবে। কিন্তু এই কোড আগের কোডের থেকে সহজে বোঝা যায়। পরবর্তীতে আমাদের সময় বাচাবে।

এখানে শুধু একটা নতুন condition add করেছি elif কিওয়ার্ড দিয়ে। এখানে খেয়াল করলে দেখবেন এখানে কিন্তু কোডের লেয়ার একটা কমে গেছে

কাজঃ এবার আপনার if else ব্যবহার করে Marking Grading System কে elif এ convert করে ফেলুন । আর কোডের screenshot কমেন্ট এ শেয়ার করুন।

আজ এই পর্যন্ত। এতক্ষন সাথে থাকার জন্য ধন্যবাদ। আপনার মতামত অবশ্যই জানাতে ভুলবেন না। কমেন্ট এ যদি বলতে সমস্যা হয় তাহলে আমার inbox তো খোলায় আছে।

Top comments (0)