পাইথন ফলন

Python Yield



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







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



এই নিবন্ধটি উদাহরণ সহ ফলন কীওয়ার্ড ব্যবহার ব্যাখ্যা করে।



ফলনের সিনট্যাক্স

ফলন বাক্য গঠন সহজ এবং সহজবোধ্য। নিম্নরূপ ফলন কীওয়ার্ড এবং সিনট্যাক্স দিয়ে ফলন শুরু করা হয়:





ফলনমান

উদাহরণ

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

#লিপ ইয়ার নির্ধারণের জন্য জেনারেটর ঘোষণা করা
ডিফleapfunc(আমার তালিকা):
জন্যআমিভিতরেআমার তালিকা:
যদি(আমি%4==0):
#ফলন ব্যবহার
ফলনআমি
#বছরের তালিকা ঘোষণা করা
year_list=[2010,২০১১,2012,2016,২০২০,2024]
ছাপা('লিপ ইয়ার ভ্যালু প্রিন্ট করা')
জন্যএক্সভিতরেleapfunc(year_list):
ছাপা(এক্স)

আউটপুট



আউটপুট লিপ ইয়ারের সিরিজ দেখায়।

আসুন আরেকটি উদাহরণ দেখি যেখানে জেনারেটর ফাংশন বিভিন্ন সংখ্যা এবং স্ট্রিং উৎপন্ন করে।

#একটি জেনারেটর ফাংশন ঘোষণা
ডিফmyfunc():
ফলন 'মার্ক'
ফলন 'জন'
ফলন 'টেলর'
ফলন 'ইভান'
ফলন 10
ফলন বিশ
ফলন 30
ফলন 40
ফলন পঞ্চাশ
#কলিং এবং জেনারেটর ফাংশনের মাধ্যমে পুনরাবৃত্তি
জন্যআমিভিতরেmyfunc():
#মুদ্রণ মান
ছাপা(আমি)

আউটপুট

সংখ্যার ক্রমের ঘনক মান গণনা এবং মুদ্রণের জন্য একটি জেনারেটর ফাংশন বাস্তবায়ন করা যাক। আমরা 1 থেকে 30 পর্যন্ত ঘনক মান তৈরি করছি।

#ঘনক মান গণনা করার জন্য একটি জেনারেটর ফাংশন ঘোষণা
ডিফক্যালকিউব():
ঘন্টা=
#অসীম যখন লুপ
যখন সত্য:
#গণনা ঘনক
ফলনval * val * val
#1 দ্বারা মান বৃদ্ধি
ঘন্টা=ভাল +
ছাপা('কিউব মান হল:')
#জেনারেটর ফাংশন কল করা
জন্যআমিভিতরেক্যালকিউব():
যদিআমি>30:
বিরতি
ছাপা(আমি)

আউটপুট

আউটপুট কিউব মান 30 এর কম দেখায়।

উপসংহার

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