সংলগ্ন (adjacent) এলিমেন্টগুলো গুণ করার জন্য zip মেথড, tuple মেথড এবং জেনারেটর এক্সপ্রেশন ব্যবহার করা যায়।
zip মেথড ইটरेবলগুলো গ্রহণ করে, সেগুলোকে একটি টাপলে জমা করে এবং ফলাফল হিসেবে রিটার্ন করে।
জেনারেটর ইটেরেটর তৈরি করার একটি সহজ পদ্ধতি। এটি স্বয়ংক্রিয়ভাবে __iter__() এবং __next__() মেথডসহ একটি ক্লাস ইমপ্লিমেন্ট করে এবং আভ্যন্তরীণ স্টেট ট্র্যাক করে, সেইসাথে কোনো মান রিটার্ন করার জন্য না থাকলে StopIteration এক্সেপশন উত্থাপন করে।
নিচে এর একটি উদাহরণ দেওয়া হলো:
উদাহরণ
my_tuple_1 = (7, 8, 0, 3, 45, 3, 2, 22)
print("টাপলটি হলো : ")
print(my_tuple_1)
my_result = tuple(i * j for i, j in zip(my_tuple_1, my_tuple_1[1:]))
print("গুণ করার পর টাপলটি হলো : ")
print(my_result)
আউটপুট
টাপলটি হলো : (7, 8, 0, 3, 45, 3, 2, 22) গুণ করার পর টাপলটি হলো : (56, 0, 0, 135, 135, 6, 44)
ব্যাখ্যা
- একটি টাপল সংজ্ঞায়িত করা হয়েছে এবং কনসোলে প্রদর্শন করা হয়েছে।
- এটি প্রথম এলিমেন্ট বাদ দিয়ে একই টাপলের সাথে জিপ (zip) করা হয়েছে, এরপর ইটারেট করে টাপলের সংলগ্ন এলিমেন্টগুলো গুণ করা হয়েছে।
- ফলাফল একটি ভেরিয়েবলে এসাইন করা হয়েছে।
- কনসোলে আউটপুট হিসেবে প্রদর্শিত হয়েছে।