কাউন্টার দিয়ে লুপ তৈরি করতে পাইথনে Enumerate ফাংশন ব্যবহার করুন

Use Enumerate Function Python Create Loops With Counters



এই নিবন্ধটি পাইথনের স্ট্যান্ডার্ড মডিউল লাইব্রেরিতে উপলব্ধ গণনা ফাংশনের ব্যবহার ব্যাখ্যা করবে। Enumerate ফাংশন আপনাকে যেকোনো পুনরাবৃত্তিযোগ্য বস্তুর একটি সূচী বা উপাদান গণনা করতে দেয়। তারপরে আপনি তাদের উপর আরও যুক্তি প্রয়োগ করতে পারেন কারণ আপনার উভয় মান এবং এর সাথে মানচিত্রে অ্যাক্সেস থাকবে।

সিনট্যাক্স এবং মৌলিক উদাহরণ

আপনি যদি অন্য প্রোগ্রামিং ল্যাঙ্গুয়েজ, বিশেষ করে সি ল্যাঙ্গুয়েজ এবং সি স্টাইল সিনট্যাক্স সহ অন্যান্য ভাষাগুলিতে লুপ ব্যবহার করেন, তাহলে আপনি লুপে একটি সূচী সূচক উল্লেখ করতে পারেন। রেফারেন্সের জন্য, এখানে একটি লুপ ফর সি এবং অন্যান্য ভাষার অনুরূপ বাক্য গঠন রয়েছে:







জন্য (intআমি= 0;আমি< 10;আমি++)

{

printf ('%dn',আমি);

}

লুপ স্টেটমেন্ট শূন্যের মান ধারণকারী একটি ভেরিয়েবল শুরু করে, চেক করে যে এটি একটি থ্রেশহোল্ডের চেয়ে কম এবং লুপ ব্লকের ভিতরে যুক্তি মূল্যায়ন করার পর এটি একটি গণনা দ্বারা বৃদ্ধি করে (যদি স্টপ শর্ত পূরণ হয়)। এইভাবে আপনি একটি সূচক ব্যবহার করতে পারেন এবং আপনার লুপ ব্লকে উল্লেখিত যেকোনো বস্তুর জন্য এটি বরাদ্দ করতে পারেন। তুলনামূলকভাবে, পাইথনে একই ফলাফলের সাথে লুপের জন্য এখানে দেখায়:



জন্যআমিভিতরে পরিসীমা(0, 10):

ছাপা (আমি)

পাইথনে রেঞ্জ ফাংশন আপনাকে একটি সংখ্যা পরিসীমা ক্রম নির্দিষ্ট করতে দেয় যার একটি ডিফল্ট ধাপ রয়েছে। আপনি তৃতীয় যুক্তি সরবরাহ করে ধাপের মান পরিবর্তন করতে পারেন। পরিসীমা ফাংশনের দ্বিতীয় যুক্তিটি স্টপ অবস্থার জন্য থ্রেশহোল্ড সেট করতে ব্যবহৃত হয়। উভয় কোড নমুনা নিম্নলিখিত আউটপুট উত্পাদন:



0



2

3

4

5

6

7

8

9

এই লুপগুলি ঠিক কাজ করে যদি আপনি কিছু সংখ্যার ক্রম তৈরি করতে চান এবং লুপ স্টেটমেন্টের ভিতরে কিছু যুক্তির সাথে যুক্ত করতে চান। যাইহোক, আপনাকে অন্য নেস্টেড লুপ ব্যবহার করতে হতে পারে অথবা যেকোনো পুনরাবৃত্তিমূলক প্রকারে ফলন ফাংশন ব্যবহার করতে হবে যাতে তাদের এক ধরণের ট্র্যাকযোগ্য গণনা বরাদ্দ করা যায়। গণনা পদ্ধতি একটি বিবৃতিতে পুনরাবৃত্তির জন্য সূচী বরাদ্দ করা সহজ করে তোলে, যার ফলে একাধিক নেস্টেড লুপ চালানোর প্রয়োজনীয়তা দূর হয়। এই কোড নমুনা দেখুন:





সংখ্যা= ['শূন্য', 'এক', 'দুই', 'তিন', 'চার', 'পাঁচ']

enumerated_numbers= তালিকাভুক্ত(সংখ্যা)

জন্যসূচক,আইটেমভিতরেenumerated_numbers:

ছাপা (সূচক,আইটেম)

প্রথম বিবৃতি সংখ্যার একটি নতুন পরিবর্তনশীল সংজ্ঞায়িত করে এবং এটি একটি পুনরাবৃত্তিমূলক (তালিকা প্রকার) বরাদ্দ করে। দ্বিতীয় বিবৃতিটি গণনা ফাংশনের ব্যবহার দেখায় যেখানে আপনি এটিকে একটি বাধ্যতামূলক যুক্তি হিসাবে পুনরাবৃত্তিযোগ্য সরবরাহ করেন। তৃতীয় স্টেটমেন্ট enumerated_numbers ভেরিয়েবলকে লিস্ট টাইপ অবজেক্টে রূপান্তর করে। ডিফল্টরূপে, গণনা ফাংশন একটি গণনা টাইপ বস্তু তৈরি করে এবং পুনরাবৃত্তিযোগ্য টাইপ নয়, তাই আপনাকে এটি রূপান্তর করতে হবে। উপরে উল্লিখিত কোড নমুনা চালানোর পরে, আপনার নিম্নলিখিত আউটপুট পাওয়া উচিত:

[(0, 'শূন্য'), (1, 'এক'), (2, 'দুই'), (3, 'তিন'), (4, 'চার'), (5, 'পাঁচ')]

গণনা ফাংশন একটি পুনরাবৃত্তিমূলক টাইপ প্রতিটি উপাদান একটি গণনা বরাদ্দ করে এবং জোড়া মান সঙ্গে tuples তৈরি করে। ডিফল্টরূপে, গণনা শূন্য থেকে শুরু হয়।



এখন যেহেতু আপনি একটি পুনরাবৃত্তিমূলক প্রকারে প্রতিটি উপাদানকে একটি নম্বর বরাদ্দ করেছেন, আপনি নেস্টেড স্টেটমেন্ট না লিখে সহজেই এর উপর লুপ করতে পারেন:

সংখ্যা= ['শূন্য', 'এক', 'দুই', 'তিন', 'চার', 'পাঁচ']

enumerated_numbers= তালিকাভুক্ত(সংখ্যা)

জন্যসূচক,আইটেমভিতরেenumerated_numbers:

ছাপা (সূচক,আইটেম)

উপরে উল্লিখিত কোড নমুনা নিম্নলিখিত আউটপুট উত্পাদন করবে:

0 শূন্য

1 এক

2 দুই

3 তিন

4 চার

5 পাঁচ

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

সংখ্যা= ['শূন্য', 'এক', 'দুই', 'তিন', 'চার', 'পাঁচ']

জন্যসূচক,আইটেমভিতরে তালিকাভুক্ত(সংখ্যা):

ছাপা (সূচক,আইটেম)

একটি ভিন্ন সূচক সূচকের সাথে গণনা ব্যবহার করা

গণনা ফাংশন একটি alচ্ছিক যুক্তি নেয় যেখানে আপনি একটি সূচী সূচক নির্দিষ্ট করতে পারেন। ডিফল্টরূপে এটি শূন্য, কিন্তু আপনি শুরু আর্গুমেন্ট ব্যবহার করে এটি পরিবর্তন করতে পারেন:

সংখ্যা= ['এক', 'দুই', 'তিন', 'চার', 'পাঁচ']

জন্যসূচক,আইটেমভিতরে তালিকাভুক্ত(সংখ্যা,শুরু=):

ছাপা (সূচক,আইটেম)

দ্বিতীয় বিবৃতিতে, start = 1 আর্গুমেন্ট ব্যবহার করে শুরু বিন্দু পরিবর্তন করা হয়। উপরে উল্লিখিত কোড নমুনা চালানোর পরে, আপনার নিম্নলিখিত আউটপুট পাওয়া উচিত:

1 এক

2 দুই

3 তিন

4 চার

5 পাঁচ

ধাপ সহ সূচক বরাদ্দ করা

এই নিবন্ধের প্রথম বিভাগে, সি ল্যাঙ্গুয়েজের জন্য লুপের জন্য সিনট্যাক্স দেখানো হয়েছে যেখানে আপনি পরবর্তী প্রতিটি গণনা বা সূচকের মধ্যে ধাপগুলি সংজ্ঞায়িত করতে পারেন। পাইথনে এনুমারেট ফাংশনে এমন কোন যুক্তি উপলব্ধ নেই তাই আপনি গণনার মধ্যে একটি ধাপ নির্দিষ্ট করতে পারবেন না। লুপ ব্লকের জন্য গণনার ভিতরে পদক্ষেপগুলি বাস্তবায়নের জন্য আপনি প্রকৃতপক্ষে আপনার নিজের যুক্তি লিখতে পারেন। যাইহোক, ন্যূনতম কোড লিখে কাস্টম ধাপগুলি বাস্তবায়নের একটি উপায় আছে। নিম্নলিখিত উদাহরণটি জিপ এবং পরিসীমা ফাংশন ব্যবহার করে পদক্ষেপের বাস্তবায়ন দেখায়:

সংখ্যা= ['শূন্য', 'দুই', 'চার', 'ছয়']

জন্যসূচক,আইটেমভিতরে zip(পরিসীমা(0, 7, 2),সংখ্যা):

ছাপা (সূচক,আইটেম)

জিপ ফাংশন আপনাকে দুই বা ততোধিক পুনরাবৃত্তির থেকে একই সূচক থাকা উপাদানগুলি তুলে জোড় তৈরি করতে দেয়। সুতরাং এখানে জিপ ফাংশন পরিসীমা (0, 7, 2) ফাংশন থেকে পুনরাবৃত্তিযোগ্য থেকে একটি উপাদান এবং সংখ্যার তালিকা থেকে আরেকটি উপাদান তুলে নেয় এবং তারপরে উভয়কে একটি টুপলে জোড়া দেয়। শেষ ফলাফল গণনা ফাংশনের একটি অভিন্ন বাস্তবায়ন কিন্তু রেঞ্জ (0, 7, 2) ফাংশন (এই ক্ষেত্রে 2) এর তৃতীয় যুক্তি হিসাবে নির্দিষ্ট কাস্টম পদক্ষেপগুলির সাথে। উপরে উল্লিখিত কোড নমুনা চালানোর পরে, আপনার নিম্নলিখিত আউটপুট পাওয়া উচিত:

0 শূন্য

2 দুই

4 চার

6 ছয়

উপসংহার

পাইথনে এনুমারেট ফাংশন আপনাকে একটি পুনরাবৃত্তিযোগ্য বস্তুর উপাদানগুলিতে একটি সংখ্যা ক্রম বরাদ্দ করে সংক্ষিপ্ত কোড লিখতে দেয়। যদি আপনি একটি পুনরাবৃত্তিযোগ্য ধরণের ভিতরে আইটেমগুলির সূচকের ট্র্যাক রাখতে চান তবে এটি সত্যিই কার্যকর। আপনি যদি কাস্টম ধাপগুলির সাথে পুনরাবৃত্তিযোগ্য প্রকারগুলি গণনা করতে চান তবে শেষ উদাহরণে ব্যাখ্যা করা জিপ ফাংশনটি ব্যবহার করুন।