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

পাইথনে একটি লিস্টকে N আকারের চাঙ্কে ভাঙা

এখানে একটি ইউজার ইনপুট লিস্ট এবং একটি ব্রেক সাইজ দেওয়া থাকবে। আমাদের কাজ হলো দেওয়া সাইজ অনুযায়ী লিস্টকে ভাঙা।

পদ্ধতি ১

এখানে yield কীওয়ার্ড ব্যবহার করা হয়েছে যা একটি ফাংশনকে সেটা যেখানে ছেড়ে দিয়েছিল সেখান থেকে আবার কল করার অনুমতি দেয়, এটি রেগুলার ফাংশনের সাথে মূল পার্থক্য।

উদাহরণ কোড

A = list()
n = int(input("Enter the size of the List"))
print("Enter the number")
for i in range(int(n)):
    p = int(input("Size="))
    A.append(int(p))
print(A)

def list_chunks(l, n):
    for i in range(0, len(l), n):
        yield l[i:i + n]

n = int(input("Enter Chunk Size"))
my_list = list(list_chunks(A, n))
print("List of Chunks", my_list)

আউটপুট

Enter the size of the List 6
Enter the number
Size= 12
[12]
Size= 33
[12, 33]
Size= 11
[12, 33, 11]
Size= 56
[12, 33, 11, 56]
Size= 44
[12, 33, 11, 56, 44]
Size= 89
[12, 33, 11, 56, 44, 89]
Enter Chunk Size 3
List of Chunks [[12, 33, 11], [56, 44, 89]]

পদ্ধতি ২

লিস্ট কমপ্রিহেনশন ব্যবহার করে এই সমস্যাটি এক লাইনে সমাধান করা যায়।

উদাহরণ কোড

A = list()
n = int(input("Enter the size of the List"))
print("Enter the number")
for i in range(int(n)):
    p = int(input("Size="))
    A.append(int(p))
print(A)
n = int(input("Enter Chunk Size"))
my_final = [A[i * n:(i + 1) * n] for i in range((len(A) + n - 1) // n)]
print("List of chunks:", my_final)

আউটপুট

Enter the size of the List 6
Enter the number
Size= 23
[23]
Size= 34
[23, 34]
Size= 12
[23, 34, 12]
Size= 56
[23, 34, 12, 56]
Size= 33
[23, 34, 12, 56, 33]
Size= 22
[23, 34, 12, 56, 33, 22]
Enter Chunk Size 3
List of chunks: [[23, 34, 12], [56, 33, 22]]
  1. পাইথনে লিস্টের সাইজ কীভাবে পাবেন?

  2. পাইথনে লিস্টকে টাপলে কনভার্ট করবেন?

  3. পাইথনে লিস্টের আকার (সাইজ) জানার পদ্ধতি

  4. পাইথনে লিস্টকে সমান আকারের চানকে বিভক্ত করার পদ্ধতি