পাইথনে প্রদত্ত তালিকা থেকে ডেটা বিশ্লেষণ করার জন্য স্লাইসিং একটি খুব সাধারণ কৌশল। কিন্তু আমাদের বিশ্লেষণের জন্য কখনও কখনও আমাদের একটি নির্দিষ্ট পরিসরের মানগুলির জন্য একটি তালিকার স্লাইস তৈরি করতে হবে। উদাহরণস্বরূপ আমাদের তালিকা থেকে প্রতি 4টি উপাদান বাদ দিয়ে 4টি উপাদান প্রিন্ট করতে হবে। এই নিবন্ধে আমরা পাইথনে রেঞ্জ স্লাইস করার এই ধারণাটি দেখতে পাব।
পরিসীমা() এবং লেন() ব্যবহার করা
আমরা তালিকার পুরো দৈর্ঘ্যের মধ্য দিয়ে যাওয়ার জন্য একটি লুপ তৈরি করি তবে শুধুমাত্র সেই উপাদানগুলি বেছে নিই যা বিভাজ্যতা পরীক্ষাকে সন্তুষ্ট করে। বিভাজ্যতা পরীক্ষায় আমরা তালিকার kth উপাদানের অবশিষ্টাংশের মান পরীক্ষা করি। যদি অবশিষ্টাংশ পরিসীমা মানের থেকে বেশি বা সমান হয়, তাহলে আমরা উপাদানটি গ্রহণ করি অন্যথায় আমরা তা গ্রহণ করি না।
উদাহরণ
range_slicing = [6,9,11,15,20,24,29,36,39,43,47,52,56,70,73,79] print("The given list: ",range_slicing) # Range Value s = 4 # Using range and len result = [range_slicing[k] for k in range(len(range_slicing)) if k % (s * 2) >= s] print("\nThe list after range slicing: ",result)
উপরের কোডটি চালানো আমাদের নিম্নলিখিত ফলাফল দেয়:
The given list: [6, 9, 11, 15, 20, 24, 29, 36, 39, 43, 47, 52, 56, 70, 73, 79] The list after range slicing: [20, 24, 29, 36, 56, 70, 73, 79]
গণনা ব্যবহার করা
আমরা আগের পদ্ধতির মতো একই যুক্তি প্রয়োগ করি কিন্তু range() এবং len() ব্যবহার করার পরিবর্তে আমরা কেবল enumerate() প্রয়োগ করি। অনুগ্রহ করে মনে রাখবেন তালিকার শেষ উপাদানটি ফলাফলে উপস্থিত হয় কারণ এটি বিভাজ্যতার শর্তকে সন্তুষ্ট করে।
উদাহরণ
range_slicing = [6,9,11,15,20,24,29,36,39,43,47,52,56,70,73,79] print("The given list: ",range_slicing) # Range value s2= 5 # Using Enumerate result_2 = [val for m, val in enumerate(range_slicing) if m % (s2 * 2) >= s2] print("\nThe list after range slicing: ",result_2)
উপরের কোডটি চালানো আমাদের নিম্নলিখিত ফলাফল দেয়:
The given list: [6, 9, 11, 15, 20, 24, 29, 36, 39, 43, 47, 52, 56, 70, 73, 79] The list after range slicing: [24, 29, 36, 39, 43, 79]