Python Basics
Python Line Indentation
পাইথনে Lines Indentation কি?
অধিকাংশ Programming Language যেমন – PHP, C, C++, Java ইত্যাদিতে function, class, loop, এবং condition গুলোতে কোন কোডটি কোন কোড ব্লকের অধীনে তা নির্ধারণের জন্য ব্রাসেস { } বা দ্বিতীয় বন্ধনী ব্যবহার করা হয়। কিন্তু পাইথনে ব্রাসেস { } বা দ্বিতীয় বন্ধনীর পরিবর্তে tab বা চারটি space ব্যবহার করা হয়, আর এটাকে বলা হয় লাইন ইন্ডেন্টেশন(Line Indentation)।
পাইথন প্রোগ্রামিং ল্যাঙ্গুয়েজে ব্যবহৃত কিছু basic Line Indentation Rules:
- কোডের একটি নির্দিষ্ট ব্লকের জন্য একটি সঠিক ইন্ডেন্টেশন রয়েছে কিনা তা দেখতে হবে।
- একজন প্রোগ্রামার ব্যাকস্ল্যাশ ব্যবহার করে ইন্ডেন্টেশনকে একাধিক লাইনে বিভক্ত করতে পারে।
- যদি কোনো ব্লক যেখানে সঠিক ইন্ডেন্টেশন বজায় রাখা না হয়, তাহলে পাইথন কম্পাইল ইন্ডেন্টেশন error through করবে।
- ইন্ডেন্টেশন নিয়ম অনুসরণে সামঞ্জস্যপূর্ণ হওয়া একজন প্রোগ্রামারের জন্য বেশ বিভ্রান্তিকর যদি কোডটি খুব বড় হয় বা কোডের প্রচুর লাইন থাকে।
- কিন্তু লাইন ইন্ডেন্টেশন আমাদেরকে কোডের প্রতিটি ব্লকের জন্য বন্ধনী প্রয়োগ করার পরিবর্তে, সাধারণ সিনট্যাক্স ব্যবহার করে কোড বাস্তবায়নে সাহায্য করে, যেমন আমরা অন্যান্য প্রোগ্রামিং ভাষায় করি।
- এটি কেবল আমাদের জন্য সহজ নয়, এটি আমাদের সময় বাঁচায় এবং কোডের লাইনগুলিকে হ্রাস করে; তাই শেষ পর্যন্ত, গতি বাড়ে এবং এক্সিকিউশন টাইম হ্রাস পায়।
- কোডের একটি নির্দিষ্ট ব্লকের জন্য সাদা স্থানের সংখ্যা ইতিমধ্যেই স্থির করা আছে। যদি আমরা নেস্টেড কন্ডিশনাল স্টেটমেন্ট ব্যবহার করি, তাহলে সাব-সাব স্টেটমেন্টের নিয়ম অনুযায়ী হোয়াইটস্পেসের সংখ্যা বাড়বে ।
Web Development, Data Science and Big Data Course with Python, MongoDB, MySQL and Django
চলুন একটি উদাহরণ দিয়ে বুঝা যাক :
num=5 if num==5: print("Yes It's Five") print ("Checking Line Indentation") else: print ("It's not Five")
ব্যাখ্যা: উপরের কোডটিতে আমরা if block এর মধ্যে কোড গুলো if যেখান থেকে শুরু হয়েছে তার ঠিক একটি tab পর শুরু করেছি, একই ভাবে else code block এর মধ্যের কোড গুলোও একটি tab পর লেখা শুরু করেছি। যার জন্য আমাদের কোনো লাইন ইন্ডেন্টেশন ইরর দেখাবেনা। এবং ফলাফল ঠিক নিচের মতো আসবে:
এখন যদি আমরা কোডটি ঠিক নিচের মতো লিখি তাহলে একটা Line Indentation Error দেখাবে।
num=5 if num==5: print("Yes It's Five") print ("Checking Line Indentation")
আপনি এখন ঠিক নিচের মতো একটা লাইন ইন্ডেন্টেশন ইরর দেখতে পাবেন।
তবে আপনি চাইলে উপরের Code এভাবেও লিখতে পারেন:
num=5 if num==5:print("Yes It's Five");print("Its also right Code")
Web Development, Data Science and Big Data Course with Python, MongoDB, MySQL and Django
কিভাবে পাইথনে indentation errors ঠিক করবেন?
Indentation error ঠিক করার সময় যে পয়েন্টগুলি অবশ্যই মনে রাখতে হবে:
আমরা আগে দেখেছি, ইন্ডেন্টেশন ত্রুটি শুধুমাত্র অতিরিক্ত বা কম হোয়াইটস্পেস এবং ট্যাবের কারণে ঘটে; তাই, আমাদের সমস্ত হোয়াইটস্পেস এবং ট্যাব ঠিক করতে হবে।
- প্রথমে আপনাকে কোডের একটি নির্দিষ্ট লাইনে ত্রুটি খুঁজে বের করতে হবে।
- এর পরে, সেই লাইনে হোয়াইটস্পেসের সংখ্যা পরীক্ষা করুন এবং কোডের ব্লকটি সনাক্ত করুন যেখানে সেই লাইনটি রয়েছে।
- সেই ব্লকের ইন্ডেন্টেশনকে সেই ব্লকের শেষ এবং শুরুর বিন্দুর সাথে মিলিয়ে নিন এবং সেই ব্লকের শুরুতে এবং শেষে ব্যবহৃত হোয়াইটস্পেসের সংখ্যা গণনা করুন।
- তারপরও, যদি ত্রুটিটি সমাধান না করা হয়, কোডের প্রতিটি ব্লকের ইন্ডেন্টেশনকে কোডের অন্য একটি সংশ্লিষ্ট ব্লকের সাথে মেলে একইভাবে ব্যবহার করে সাদা স্থান এবং ট্যাবগুলি গণনা করে।
- এছাড়াও, আপনি যে এডিটর ব্যবহার করছেন তার সাহায্য নেন। ব্যবহার করা হোয়াইটস্পেস এবং ট্যাবের সংখ্যা পরীক্ষা করার জন্য এবং ব্যবহার করা অপ্রয়োজনীয় হোয়াইটস্পেসগুলি খুঁজে বের করে আপনি সহজেই এটি থেকে সনাক্ত করতে পারেন।
পাইথনে ইন্ডেন্টেশনের সুবিধা
- পাইথনে ইন্ডেন্টেশন ব্যবহার করা হয় কোডের একটি নির্দিষ্ট ব্লকের প্রতিনিধিত্ব করার জন্য, কিন্তু অন্যান্য প্রোগ্রামিং ভাষায়, তারা বিভিন্ন brackets ব্যবহার করে। ইন্ডেন্টেশনের কারণে, কোডটি আরও দক্ষ এবং সুন্দরভাবে কাঠামোবদ্ধ দেখায়।
- পাইথন প্রোগ্রামিং ভাষায় ব্যবহৃত ইন্ডেন্টেশন নিয়ম খুবই সহজ; এটি একজন প্রোগ্রামারের কোডকে তার নিজের কাছে , টিমের কাছে এবং অন্য যেকোনো প্রোগ্রামারের কাছে অনেকবেশি পাঠযোগ্য করে তোলে।
- এছাড়াও, ইন্ডেন্টেশন কোডটিকে সুন্দরভাবে গঠন করে এর দক্ষতা এবং পাঠযোগ্যতা বাড়ায়।
Web Development, Data Science and Big Data Course with Python, MongoDB, MySQL and Django
পাইথনে ইন্ডেন্টেশনের অসুবিধা
- ইন্ডেন্টেশনে হোয়াইটস্পেস ব্যবহারের কারণে, অনেক সময় কোডের অনেক লাইন থাকলে ইন্ডেন্টেশন ত্রুটি ঠিক করা খুব কঠিন কাজ।
- বিভিন্ন জনপ্রিয় প্রোগ্রামিং ল্যাঙ্গুয়েজ যেমন সি, সি++, জাভা ইন্ডেন্টেশনের জন্য braces ব্যবহার করে, তাই অন্যান্য প্রোগ্রামিং ল্যাংগুয়েজ থেকে আসা যে কেউ ইন্ডেন্টেশনের জন্য হোয়াইটস্পেস ব্যবহার করার ধারণার সাথে সামঞ্জস্য করা কঠিন বলে মনে করেন।