কম্পিউটার

পাইথন সিনট্যাক্স ত্রুটি:লুপ সলিউশনে সঠিকভাবে চালিয়ে যান না

অবিরত কীওয়ার্ডটি একটি প্রোগ্রামের ক্রমকে একটি লুপে পরবর্তী পুনরাবৃত্তিতে নিয়ে যায়। আপনি যদি একটি ফর লুপ বা কিছুক্ষণ লুপের বাইরে একটি অবিরত বিবৃতি ব্যবহার করেন, তাহলে SyntaxError: continue not properly in loop ত্রুটি উত্থাপিত হবে।

এই নির্দেশিকাটি অনুসন্ধান করে যে এই ত্রুটির অর্থ কী এবং কেন আপনি এটির সম্মুখীন হতে পারেন৷ এটি আপনাকে এই ত্রুটির একটি উদাহরণের মাধ্যমে নিয়ে যায় যাতে আপনি এটি কীভাবে কাজ করে তা বের করতে পারেন৷

সিনট্যাক্স ত্রুটি:লুপে সঠিকভাবে চালিয়ে যান না

একটি অবিরত বিবৃতি আপনাকে লুপ বা একটি সময় লুপে পরবর্তী পুনরাবৃত্তিতে যেতে দেয়। বিবৃতিগুলি চালিয়ে যান, বিরতি বিবৃতির মতো, কোনও যুক্তি গ্রহণ করবেন না। এক কর্মসূচীতে তারা একা দাঁড়িয়ে থাকে।

আপনি শুধুমাত্র একটি লুপে একটি অবিরত বিবৃতি ব্যবহার করতে পারেন। এর কারণ হল কন্টিনিউ স্টেটমেন্টগুলি লুপে দেখানোর জন্য ডিজাইন করা হয়েছে। আপনি একটি প্রোগ্রামকে continue করার নির্দেশ দিতে একটি অবিরত বিবৃতি ব্যবহার করতে পারবেন না একটি লুপের বাইরে কারণ কীওয়ার্ডের জন্য কোন প্রসঙ্গ নেই যা চালিয়ে যেতে হবে তা ব্যাখ্যা করার জন্য।

কন্টিনিউ স্টেটমেন্ট একটি if স্টেটমেন্ট বা কোডের অন্য ব্লকের মধ্যে দেখা যেতে পারে, যতক্ষণ না কোডের সেই ব্লকটি লুপের ভিতরে থাকে।

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

আসুন একটি প্রোগ্রাম তৈরি করি যা একটি কফি হাউসে একটি ইনভেন্টরি ম্যানেজমেন্ট সিস্টেমের জন্য ইনপুটকে যাচাই করে। একটি ইনপুট বৈধ হওয়ার জন্য, এতে কমপক্ষে তিনটি অক্ষর থাকতে হবে।

শুরু করতে, আসুন ব্যবহারকারীকে একটি পণ্যের নাম সন্নিবেশ করতে বলি যা তারা সিস্টেমে প্রবেশ করতে চায়:

product_name = input(“Enter the product name: ”)

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

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

পরবর্তী, আসুন এই প্রতিক্রিয়া যাচাই করা যাক। ইনপুটটি কমপক্ষে তিনটি অক্ষর দীর্ঘ হয় তা নিশ্চিত করতে আমরা একটি if স্টেটমেন্ট ব্যবহার করব:

if len(product_name) < 3:
	print("Product names must be at least three characters long.")
	continue
else:
	break

print("Your product name is valid.")

যদি একজন ব্যবহারকারী তিনটি অক্ষরের নিচে একটি পণ্যের নাম সন্নিবেশ করেন, তাহলে কনসোলে একটি বার্তা প্রিন্ট করা হয় এবং তারপর একটি অবিরত বিবৃতি চলে। অন্যথায়, একটি বিরতি বিবৃতি সঞ্চালিত হয়। পণ্যের নামের দৈর্ঘ্য পুনরুদ্ধার করতে আমরা len() পদ্ধতি ব্যবহার করি।

যদি আমাদের পণ্যের নাম বৈধ হয়, তাহলে কনসোলে এই ঘটনাটি আমাদের জানিয়ে একটি বার্তা প্রদর্শিত হবে।

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

 File "main.py", line 3
	continue
	^
SyntaxError: 'continue' not properly in loop

আমাদের কোড একটি ত্রুটি প্রদান করে৷

সমাধান

একটি নির্দিষ্ট শর্ত পূরণ হলে আমাদের প্রোগ্রাম চালিয়ে যেতে আমরা অবিরত বিবৃতি ব্যবহার করেছি। যদিও আমরা একটি if স্টেটমেন্টে কন্টিনিউ স্টেটমেন্ট ব্যবহার করতে পারি, আমাদের কন্টিনিউ স্টেটমেন্ট অবশ্যই লুপের মধ্যে কোথাও দেখা দিতে হবে।

আমরা আমাদের প্রোগ্রামে একটি লুপ ব্যবহার করি না যা আমাদের চালিয়ে যাওয়ার ব্যবহারকে কিছুটা বিপরীতমুখী করে তোলে। আরও কী যে আমরা অবিরত ব্যবহার করছি, যা ত্রুটি ঘটায়। এই ত্রুটিটি ঠিক করতে, আমাদের কোডটি একটি লুপে আবদ্ধ করতে হবে:

while True:
	product_name = input("Enter the product name: ")

if len(product_name) < 3:
	print("Product names must be at least three characters long.")
	continue
else:
	break

print("Your product name is valid.")

আমরা আমাদের কোডে একটি পরিবর্তন করেছি। আমাদের সমস্ত প্রোগ্রাম এখন কিছুক্ষণ লুপের ভিতরে রয়েছে। এর মানে হল যে লুপ বন্ধ না হওয়া পর্যন্ত আমাদের ব্যবহারকারীকে একটি পণ্যের নাম লিখতে অনুরোধ করা হবে।

ব্যবহারকারী একটি বৈধ পণ্যের নাম সন্নিবেশ করলেই আমাদের লুপ বন্ধ হয়ে যায়। অন্যথায়, কনসোলে একটি বার্তা প্রিন্ট করা হয় এবং আমাদের লুপ আবার পুনরাবৃত্তি হবে।

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

আপনার পণ্যের নাম বৈধ.

পণ্যের নাম লিখুন:রুয়ান্ডান

আমাদের কোড সফলভাবে সঞ্চালিত হয়! আসুন একটি অবৈধ পণ্যের নামে আমাদের কোড চালানোর চেষ্টা করি:

পণ্যের নাম লিখুন:RW

পণ্যের নাম কমপক্ষে তিন অক্ষর দীর্ঘ হতে হবে।

পণ্যের নাম লিখুন:

আমাদের প্রোগ্রাম আমাদের জানায় যে পণ্যের নামটি অবৈধ এবং আমাদেরকে অন্য পণ্যের নাম সন্নিবেশ করতে অনুরোধ করে।

উপসংহার

SyntaxError: continue not properly in loop আপনি একটি for loop বা a while loop এর বাইরে একটি অবিরত বিবৃতি ব্যবহার করার চেষ্টা করলে ত্রুটি উত্থাপিত হয়। এই ত্রুটিটি ঠিক করতে, একটি লুপের মধ্যে আপনার কোডের যেকোনো অবিরত বিবৃতিগুলিকে আবদ্ধ করুন৷

এখন আপনি একটি পেশাদার মত এই ত্রুটি ঠিক করতে প্রয়োজন জ্ঞান আছে!


  1. পাইথনে লুপ করার সময় করণীয় নেই কেন?

  2. আমরা কি একটি পাইথনে অবিরত বিবৃতি ব্যবহার করতে পারি যদি দফা?

  3. পাইথনে অপারেটর কি নয়?

  4. পাইথনে অপারেটরে কী নেই?