কম্পিউটার

পাইথন ইন্ডেন্টেশন ত্রুটি:অপ্রত্যাশিত ইন্ডেন্ট সমাধান

Indentation Errors দুটি উদ্দেশ্য পূরণ করে:তারা আপনার কোডকে আরও পঠনযোগ্য করে তুলতে সাহায্য করে এবং নিশ্চিত করে যে পাইথন ইন্টারপ্রেটার আপনার কোড সঠিকভাবে বোঝে। যদি আপনি একটি অতিরিক্ত স্থান বা ট্যাবে যোগ করেন যেখানে একটির প্রয়োজন নেই, আপনি একটি "ইন্ডেন্টেশন ত্রুটি:অপ্রত্যাশিত ইন্ডেন্ট" ত্রুটির সম্মুখীন হবেন।

এই নির্দেশিকায়, আমরা এই ত্রুটির অর্থ কী এবং কেন এটি উত্থাপিত হয়েছে তা নিয়ে আলোচনা করি। আমরা এই ত্রুটির একটি উদাহরণ দিয়ে হেঁটে যাব যাতে আপনি বুঝতে পারেন কিভাবে আপনি এটি আপনার প্রোগ্রামে ঠিক করতে পারেন৷

ইন্ডেন্টেশন ত্রুটি:অপ্রত্যাশিত ইন্ডেন্ট

একটি ইন্ডেন্ট হল একটি নির্দিষ্ট সংখ্যক স্পেস বা ট্যাব যা নির্দেশ করে যে কোডের একটি লাইন একটি নির্দিষ্ট কোড ব্লকের অংশ। নিম্নলিখিত প্রোগ্রাম বিবেচনা করুন:

def hello_world():
	print("Hello, world!")

আমরা একটি একক ফাংশন সংজ্ঞায়িত করেছি:hello_world() . এই ফাংশনে একটি প্রিন্ট স্টেটমেন্ট রয়েছে। পাইথনকে নির্দেশ করার জন্য কোডের এই লাইনটি আমাদের ফাংশনের অংশ, আমরা এটি ইন্ডেন্ট করেছি।

আপনি আপনার পছন্দের উপর নির্ভর করে স্পেস বা ট্যাব ব্যবহার করে কোড ইন্ডেন্ট করতে পারেন। আপনার শুধুমাত্র কোড ইন্ডেন্ট করা উচিত যদি সেই কোডটি অন্য কোড ব্লকের অংশ হওয়া উচিত। আপনি যখন কোড লেখেন তখন এটি অন্তর্ভুক্ত করে:

  • একটি "if…else" বিবৃতি
  • একটি "চেষ্টা...ব্যতীত" বিবৃতি
  • একটি "এর জন্য" লুপ
  • একটি "ফাংশন" বিবৃতি

পাইথন কোডটি একটি বিশেষ বিবৃতিতে উপস্থিত হলে ধারাবাহিকভাবে ইন্ডেন্ট করা আবশ্যক। পাইথন ইন্ডেন্টেশন কঠোরভাবে প্রয়োগ করে।

জাভাস্ক্রিপ্টের মতো কিছু প্রোগ্রামিং ভাষা কঠোরভাবে ইন্ডেন্টেশন প্রয়োগ করে না কারণ তারা কোডের ব্লকগুলি বোঝাতে কোঁকড়া ধনুর্বন্ধনী ব্যবহার করে। পাইথনের এই বৈশিষ্ট্যটি নেই, তাই ভাষাটি ইন্ডেন্টেশনের উপর অনেক বেশি নির্ভর করে।

"ইন্ডেন্টেশন ত্রুটি:অপ্রত্যাশিত ইন্ডেন্ট" ত্রুটির কারণ হল আপনার কোডকে অনেক দূরে ইন্ডেন্ট করা, বা কোডের একটি লাইন ইন্ডেন্ট করতে অনেকগুলি ট্যাব এবং স্পেস ব্যবহার করা।

81% অংশগ্রহণকারী বলেছেন যে তারা বুটক্যাম্পে যোগ দেওয়ার পরে তাদের প্রযুক্তিগত কাজের সম্ভাবনা সম্পর্কে আরও আত্মবিশ্বাসী বোধ করেছেন। আজই একটি বুটক্যাম্পের সাথে মিলিত হন৷

গড় বুটক্যাম্প গ্র্যাড একটি বুটক্যাম্প শুরু করা থেকে শুরু করে তাদের প্রথম চাকরি খোঁজা পর্যন্ত ক্যারিয়ারের পরিবর্তনে ছয় মাসেরও কম সময় কাটিয়েছে।

অন্যান্য ইন্ডেন্টেশন ত্রুটিগুলি আপনি সম্মুখীন হতে পারেন:

  • আনইন্ডেন্ট অন্য কোন ইন্ডেন্টেশন স্তরের সাথে মেলে না
  • একটি ইন্ডেন্টেড ব্লক প্রত্যাশিত

একটি উদাহরণ দৃশ্য

আমরা এমন একটি প্রোগ্রাম তৈরি করতে যাচ্ছি যা ব্যবহারকারীর করা কেনাকাটাগুলির একটি তালিকার মাধ্যমে লুপ করে এবং কনসোলে $25.00-এর চেয়ে বেশি সেগুলিকে প্রিন্ট করে।

শুরু করতে, কেনাকাটার একটি তালিকা সংজ্ঞায়িত করা যাক:

 purchases = [25.50, 29.90, 2.40, 57.60, 24.90, 1.55]

এরপরে, আমরা আমাদের ক্রয়ের তালিকা লুপ করার জন্য একটি ফাংশন সংজ্ঞায়িত করি এবং কনসোলে $25-এর বেশি মূল্যের জিনিসগুলি মুদ্রণ করি:

def show_high_purchases(purchases):
	   for p in purchases:
		        if p > 25.00:
			            print("Purchase: ")
				                print(p)

show_high_purchases() ফাংশন একটি যুক্তি গ্রহণ করে:ক্রয়ের তালিকা যার মাধ্যমে ফাংশন অনুসন্ধান করবে। ফাংশনটি এই তালিকার মাধ্যমে পুনরাবৃত্তি করে এবং একটি if ব্যবহার করে প্রতিটি ক্রয়ের মূল্য $25.00 এর বেশি কিনা তা পরীক্ষা করার বিবৃতি।

যদি একটি ক্রয় $25.00-এর বেশি হয়, বিবৃতি Purchase: কনসোলে প্রিন্ট করা হয়। তারপর, সেই ক্রয়ের মূল্য কনসোলে মুদ্রিত হয়। অন্যথায়, কিছুই হবে না।

আমরা আমাদের কোড চালানোর আগে, আমাদের ফাংশন কল করুন এবং একটি প্যারামিটার হিসাবে আমাদের ক্রয়ের তালিকা পাস করুন:

show_high_purchases(purchases)

আসুন আমাদের কোড চালাই এবং দেখুন কি হয়:

  File "main.py", line 7
	print(p)
	^
IndentationError: unexpected indent

আমাদের কোড সফলভাবে চালানো হয় না৷

সমাধান

পাইথন ত্রুটির মতো, কী ঘটছে তা দেখতে আমাদের সম্পূর্ণ ত্রুটি বার্তাটি পড়া উচিত। সমস্যাটি 7 লাইনে দেখা যাচ্ছে, যেখানে আমরা একটি ক্রয়ের মূল্য মুদ্রণ করি।

	if p > 25.00:
			print("Purchase: ")
				    print(p)

আমরা ঘটনাক্রমে দ্বিতীয় print() ইন্ডেন্ট করেছি বিবৃতি এটি একটি ত্রুটি সৃষ্টি করে কারণ আমাদের দ্বিতীয় print() বিবৃতি কোডের অন্য ব্লকের অংশ নয়। এটি এখনও আমাদের if এর অংশ বিবৃতি

এই ত্রুটিটি সমাধান করার জন্য, আমাদের নিশ্চিত করতে হবে যে আমরা ধারাবাহিকভাবে আমাদের সমস্ত print() ইন্ডেন্ট করি। বিবৃতি:

	if p > 25.00:
			print("Purchase: ")
				    print(p)

উভয়ই print() বিবৃতিতে একই স্তরের ইন্ডেন্টেশন ব্যবহার করা উচিত কারণ তারা একই if এর অংশ বিবৃতি আমরা উপরে এই সংশোধন করেছি।

আসুন আমাদের কোড চালানোর চেষ্টা করি:

Purchase:
25.5
Purchase:
29.9
Purchase:
57.6

আমাদের কোড সফলভাবে কনসোলে $25.00 এর বেশি মূল্যের সমস্ত কেনাকাটা প্রিন্ট করে।

উপসংহার

"ইন্ডেন্টেশন ত্রুটি:অপ্রত্যাশিত ইন্ডেন্ট" উত্থাপিত হয় যখন আপনি কোডের একটি লাইন অনেকবার ইন্ডেন্ট করেন। এই ত্রুটিটি সমাধান করতে, নিশ্চিত করুন যে আপনার সমস্ত কোড সামঞ্জস্যপূর্ণ ইন্ডেন্টেশন ব্যবহার করে এবং কোন অপ্রয়োজনীয় ইন্ডেন্ট নেই।

এখন আপনি পাইথন বিশেষজ্ঞের মতো এই ত্রুটিটি ঠিক করতে প্রস্তুত!


  1. পাইথন হ্যালো ওয়ার্ল্ড:একটি কিভাবে-টু গাইড

  2. পাইথন pyqrcode মডিউল ব্যবহার করে QR কোড তৈরি করে?

  3. কিভাবে Google Colaboratory এ পাইথন কোড চালাবেন?

  4. পাইথন কোডের জন্য অপ্টিমাইজেশন টিপস?