কম্পিউটার টিউটোরিয়াল

পাইথনে অল্টারনেট রেঞ্জ স্লাইসিং

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

range() এবং len() ব্যবহার করে

আমরা একটি for লুপ তৈরি করি যা পুরো লিস্টের দৈর্ঘ্য ঘুরে, কিন্তু শুধু সেই উপাদানগুলো বেছে নেয় যেগুলো ভাগশেষ পরীক্ষা পূরণ করে। ভাগশেষ পরীক্ষায় লিস্টের k-তম উপাদানের ভাগশেষ রেঞ্জ ভ্যালুর চেয়ে বড় বা সমান কিনা চেক করা হয়। যদি হয়, তবে উপাদানটি গ্রহণ করা হয়, নাহলে না।

উদাহরণ

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

# range এবং 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

# 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]
  1. পাইথনে লিস্টে বৃদ্ধিমান অল্টারনেট এলিমেন্ট প্যাটার্ন

  2. পাইথনে লিস্টে রেঞ্জ অফ এলিমেন্ট অ্যাসাইন করুন

  3. পাইথনে রেঞ্জের মধ্যে এলিমেন্ট ডিলিট করুন

  4. পাইথন লিস্ট কম্প্রিহেনশন এবং স্লাইসিং