পাইথন ইটারেটরস: পাইথনে ইলেটর কী এবং কীভাবে এটি ব্যবহার করব?



পাইথন পুনরুক্তিকারীদের এই ব্লগে আমরা পাইথনের আইট্রেটারদের উপর গভীরতর গবেষণা করব এবং সেগুলি কীভাবে বাস্তবায়ন করা হবে।

পাইথন প্রোগ্রামিং ল্যাঙ্গুয়েজ সহ নতুনত্বের প্রতিটি বিষয়কেই মাপ দিয়েছে , , , ইত্যাদি। পাইথন ইটারেটরগুলির মত ধারণাগুলি, এই কীর্তির অন্যতম কারণ হ'ল এগুলির মত ধারণাগুলি হল প্রোগ্রামিং ভাষা হিসাবে পাইথনের বিজয়ের বিল্ডিং ব্লক। এই নিবন্ধে, পাইথন ইটারেটরগুলি বোঝার জন্য আমরা নিম্নলিখিত ধারণাগুলির মধ্য দিয়ে যাব:

Iteilers বনাম Iterable

পাইথনের একটি অবজেক্ট, যেটি আইটেবল অবজেক্ট হিসাবে ব্যবহার করা যেতে পারে তাকে আইট্রেবল বলা হয়। এর অর্থ মূলত অবজেক্টের ক্রমটি পুনরাবৃত্তি হতে পারে। পাইথনের বেশিরভাগ সংগ্রহ যেমন একটি তালিকা , , টিপল , সেট , আর যদি পরিসীমা একটি Iteable হিসাবে গণ্য করা যেতে পারে।





পাইথন ইটারেটর কি?

একটি পাইথন আই টিরেটার মান একটি গণনাযোগ্য সংখ্যার সমন্বিত ধারক। ধারকটির মানগুলি আইট্রেটারগুলি - বিশেষত তালিকাগুলি ব্যবহার করে ট্র্যাভার করা যায়।

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



আমার_বজ = Ed 'এডুরেকা', 'পাইথন', 'পুনরুক্তি'} ইটার_বজ = ইটার (মাই_বজ) প্রিন্ট (পরবর্তী (ইটার_বজ))

আউটপুট: এডুরেকা

ইলেটর হ'ল পাইথন যে কোনও ধরণের যা একটি 'ইন লুপের জন্য' ব্যবহার করা যেতে পারে।আইট্রেটর হিসাবে যে কোনও অবজেক্টটি ব্যবহার করতে হবে তার জন্য নিম্নলিখিত পদ্ধতিগুলি প্রয়োগ করতে হবে।

পাইথনে পুনরুক্তি - এডুরেকা



1._____ __ ()

এটি একটি Iterator এর সূচনা বলা হয়।এটি এমন একটি বস্তু ফেরত পাঠানো উচিত যার পরবর্তী বা __next__ পদ্ধতি রয়েছে।

২ __ পরবর্তী __ ()

আইট্রেটারের পরবর্তী পদ্ধতিটি ইটারেবলের জন্য পরবর্তী মান প্রদান করে।

যখন কোনও ইট্রেটর একটি ‘ইন’ লুপের সাথে ব্যবহার করা হয়, পরবর্তী () স্পষ্টভাবে কল করে called Iterator অবজেক্টে। এই পদ্ধতির পুনরাবৃত্তির শেষের সিগন্যাল করার জন্য একটি স্টপআইটারেশন ব্যবহার করা উচিত।একসাথে এই দুটি পদ্ধতিকে ইটারেটর প্রোটোকল বলা হয়। আসুন আমরা বুঝতে চেষ্টা করি যে কীভাবে একটি লুপ পাইথনের একজন ইলিট্রেটার হিসাবে উদাহরণ সহ কাজ করে।

আমার জন্য বস্তু: মুদ্রণ (i)

আসুন আমরা বুঝতে পারি কীভাবে লুপের জন্য একজন Iterator হিসাবে কাজ করে।

# সেই পুনরাবৃত্ত ইটার_ওবজ = ইটার (পুনরাবৃত্ত) থেকে # একটি অনিয়মিত লুপ তৈরি করুন সত্য হিসাবে চেষ্টা করুন: চেষ্টা করুন: # পরবর্তী আইটেম এলিমেন্ট = পরবর্তী (ইটার_ওজ) পান # স্টিপটিটারেশন ব্যতীত উপাদান দিয়ে কিছু করুন: # যদি স্টিপটিটারেশন উত্থাপিত হয়, লুপ থেকে বিরতি দিন বিরতি

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

কাস্টম আইট্রেটারস

এখন আসুন আমরা কীভাবে পাইথনে কাস্টম আইট্রেটারগুলি প্রয়োগ করতে পারি তা একবার দেখে নেওয়া যাক। এটি বুঝতে, আমরা একটি উদাহরণ ব্যবহার করব। এই উদাহরণে, আমরা___ __ () এবং __next __ () পদ্ধতিগুলি প্রয়োগ করব।

ক্লাস মাই নাম্বারস: ডিএফ __iter __ (স্ব): স্ব.এ = 1 রিটার্ন সেল্ফ __next __ (স্ব): x = স্ব.আ.আ.আ.আ.আ. + + 1 রিটার্ন x মাইক্লাস = মাইনার নাম্বার () মাইটার = ইটার (মাইক্র্লাস) মুদ্রণ (পরের ( মাইটার)) মুদ্রণ (পরবর্তী (মাইটার)) মুদ্রণ (পরের (মাইটার))

আউটপুট: এক

এখন যেহেতু আমরা জানি যে আমরা কীভাবে কাস্টম আইট্রেটারগুলি প্রয়োগ করতে পারি, আসুন পাইথনের অসীম Iterators এর দিকে একবার নজর দেওয়া যাক।

অসীম ইটারেটর

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

অন্তর্নির্মিত ইটার ()দুটি আর্গুমেন্টের সাথে ডাকা যেতে পারে যেখানে প্রথম যুক্তিটি অবশ্যই একটি বস্তু (ফাংশন) হতে পারে যা বলা যেতে পারে এবং দ্বিতীয়টি হ'ল সেন্ডিনেল। প্রত্যাবর্তিত মান সেন্ডিনেলের সমান না হওয়া অবধি এই ফাংশনটিকে এই ফাংশনটি কল করে।

আসুন এটি বোঝার জন্য একটি উদাহরণ নিই

ক্লাস মাই নাম্বারস: ডিএফ __iter __ (স্ব): স্ব.এ = 1 রিটার্ন সেল্ফ __next __ (স্ব): x = স্ব.আ.আ.আ.আ.আ. + + 1 রিটার্ন x মাইক্লাস = মাইনার নাম্বার () মাইটার = ইটার (মাইক্র্লাস) মুদ্রণ (পরের ( মাইটার)) মুদ্রণ (পরের (মাইটার)) মুদ্রণ (পরের (মাইটার)) মুদ্রণ (পরের (মাইটার)) মুদ্রণ (পরের (মাইটার))

আউটপুট: এক



উপরের উদাহরণে, যতক্ষণ না আমরা মুদ্রণ বিবৃতি যুক্ত করে চলি ততক্ষণ কার্যকর করা হবে। অসীম আইট্রেটারগুলি বন্ধ করতে, আমাদের স্টপআইটারেশন স্টেটমেন্টটি ব্যবহার করা দরকার।

সেলেনিয়াম বিভিন্ন ধরণের কাঠামো

স্টপআইটারেশন

কোনও teষধকে চিরকালের আগে চলতে থামাতে আমরা স্টপআইটারেশন স্টেটমেন্টটি ব্যবহার করি। আসুন কয়েকটি উদাহরণ সহ এটি বুঝতে পারি।

ক্লাস মাই নাম্বারস: ডিএফ __iter __ (স্ব): স্ব.এ = 1 রিটার্ন সেল্ফ __next __ (স্ব): যদি সেলফ.এএম্প্প্যাম্পল্ট = 5: এক্স = সেলফ.এএন.এফ = = 1 রিটার্ন এক্স: স্টপ ইন্টেরেশন মাইক্রাস = মাই নাম্বার () মাইটারে = ইটার (মাইক্র্লাস) x মাইটারে: মুদ্রণ (এক্স)

আউটপুট: এক



এখন যত তাড়াতাড়ি শর্তটি মিথ্যা, কার্যকর হওয়াটি অন্য ব্লকে চলে যাবে এবং ইটারেশন বন্ধ হবে। এখন পাইথনে আইট্রেটারগুলির কয়েকটি অন্যান্য উদাহরণ দেখে নেওয়া যাক।

পাইথন Iterator উদাহরণ

পাইথনের আরও কয়েকটি ইটারেটর উদাহরণ এখানে রয়েছে।

আমার_বজ = ['এডুরেকা', 'পাইথন', 'পুনরাবৃত্তিকারী'] ইটার_বজ = ইটার (মাই_বজ) প্রিন্ট (পরবর্তী (ইটার_ওব))

আউটপুট: এডুরেকা

এই উদাহরণে, আমরা পুনরাবৃত্তিযোগ্য অবজেক্ট হিসাবে টিপলটি ব্যবহার করি।

আমার_বজ = ('এডুরেকা', 'পাইথন', 'পুনরাবৃত্তিকারী') ইটার_বজ = ইটার (মাই_বজ) প্রিন্ট (পরবর্তী (ইটার_বজ))

আউটপুট: এডুরেকা

আমরা পাইথনটিতে স্ট্রিংটিকে পুনরাবৃত্তিযোগ্য বস্তু হিসাবে ব্যবহার করতে পারি।

my_obj = 'এডুরেকা' ইটার_ওবজ = ইটার (মাই_বজ) প্রিন্ট (পরবর্তী (ইটার_ওজ))

আউটপুট: আইএস

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

যদি আপনি 'পাইথন আইট্রেটারস' সম্পর্কিত এই নিবন্ধটি প্রাসঙ্গিক পেয়ে থাকেন তবে চেক আউট করুন বিশ্বজুড়ে ছড়িয়ে থাকা 250,000 এরও বেশি সন্তুষ্ট শিক্ষার্থীর নেটওয়ার্ক সহ একটি বিশ্বস্ত অনলাইন লার্নিং সংস্থা।

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

যদি কোনও প্রশ্ন আসে তবে 'পাইথন আইট্রেটারস' এর মন্তব্য বিভাগে আপনার নির্দ্বিধায় জিজ্ঞাসা করুন। আমাদের দল উত্তর দিতে পেরে আনন্দিত হবে।