আমাদের একটি তালিকা রয়েছে যেখানে শুধুমাত্র সংখ্যা রয়েছে। আমরা তালিকা থেকে ক্রমিক সংখ্যার একটি সেটের গড় পাওয়ার পরিকল্পনা করি যা প্রথম সংখ্যা থেকে পরবর্তী সংখ্যায় এবং তারপরে পরবর্তী সংখ্যায় এবং আরও অনেক কিছুতে ঘুরতে থাকে৷
উদাহরণ
নীচের উদাহরণটি তালিকার প্রতিটি 4-দৈর্ঘ্যের ধারাবাহিক উপাদানগুলির গড় খোঁজার প্রয়োজনীয়তাকে সহজ করে।
Given list: [10,12,14,16,18,20,22,24,26] Average of every segment of 4 consecutive numbers: [13.0, 15.0, 17.0, 19.0, 21.0, 23.0]
সমষ্টি এবং পরিসীমা সহ
আমরা কতগুলি সংখ্যা সংগ্রহ করেছি তার ট্র্যাক রাখতে পরিসীমা প্রয়োগ করে ধারাবাহিক সংখ্যার যোগফল নিতে আমরা তালিকা বোঝার পদ্ধতি ব্যবহার করি। তারপর আমরা একটি লুপের সাহায্যে অংশের দৈর্ঘ্যের সাথে যোগফলকে ভাগ করতে থাকি। অবশেষে ফলাফল একটি নতুন তালিকায় একত্রিত হয়।
উদাহরণ
listA = [10,12,14,16,18,20,22,24,26] print("Given list:\n",listA) seg = 4 # List comprehension res = [sum(listA[m:m + seg])/seg for m in range(len(listA) - seg + 1)] print("new list with averages:\n ",res)
উপরের কোডটি চালানো আমাদের নিম্নলিখিত ফলাফল দেয় -
Given list: [10, 12, 14, 16, 18, 20, 22, 24, 26] new list with averages: [13.0, 15.0, 17.0, 19.0, 21.0, 23.0]
ইসলাইস এবং গড় সহ
এই পদ্ধতিতে আমরা পাইথন মডিউলগুলির সাহায্য নিই যা এই মানগুলি আরও সরাসরি উপায়ে গণনা করতে পারে। আমরা isslice ফাংশন ব্যবহার করে প্রদত্ত পরিসরে তালিকার উপাদানগুলিকে স্লাইস করতে থাকি এবং তারপরে চূড়ান্ত ফলাফল পেতে সরাসরি নতুন তালিকায় গড় ফাংশন প্রয়োগ করি৷
উদাহরণ
from statistics import mean from itertools import islice listA = [10,12,14,16,18,20,22,24,26] print("Given list:\n",listA) # With islice and mean listB = zip(*(islice(listA, i, None) for i in range(4))) res = list(map(mean, listB)) print("new list with averages:\n ",res)
আউটপুট
উপরের কোডটি চালানো আমাদের নিম্নলিখিত ফলাফল দেয় -
Given list: [10, 12, 14, 16, 18, 20, 22, 24, 26] new list with averages: [13, 15, 17, 19, 21, 23]