এখানে আমাদের একটি প্রদত্ত ব্যবহারকারীর ইনপুট তালিকা এবং একটি প্রদত্ত বিরতির আকার থাকবে। এবং আমাদের কাজ হল প্রদত্ত আকার অনুযায়ী তালিকা ভাঙা।
পদ্ধতি 1
এখানে আমরা ইয়েলড কীওয়ার্ড প্রয়োগ করছি এটি একটি ফাংশন সক্ষম করে যেখানে এটি ছেড়ে যায় তারপর আবার বলা হয়, এটি নিয়মিত ফাংশনের সাথে প্রধান পার্থক্য।
উদাহরণ কোড
A=list()n=int(ইনপুট("তালিকার আকার লিখুন"))প্রিন্ট("নম্বর লিখুন") রেঞ্জে i এর জন্য(int(n)):p=int(ইনপুট(" Size=")) A.append(int(p)) প্রিন্ট (A)deflist_chunks(l, n):i এর জন্য রেঞ্জ(0, len(l), n):ফলন l[i:i + n]n =int(ইনপুট("এন্টার চাঙ্ক সাইজ"))my_list =list(list_chunks(A, n))প্রিন্ট ("লিস্ট অফ খন্ড", my_list)
আউটপুট
<প্রে>লিস্টের মাপ লিখুন 6 নম্বরটি লিখুন সাইজ=12[12]আকার=33[12, 33]আকার=11[12, 33, 11]আকার=56[12, 33, 11, 56]আকার=44 [12, 33, 11, 56, 44] আকার =89[12, 33, 11, 56, 44, 89] খণ্ডের আকার 3 খণ্ডগুলির তালিকা লিখুন [[12, 33, 11], [56, 44, 89]]পদ্ধতি 2
লিস্ট কম্প্রিহেনশন ব্যবহার করে আমরা এই সমস্যাটি এক লাইনে সমাধান করতে পারি।
উদাহরণ কোড
A=list()n=int(ইনপুট("তালিকার আকার লিখুন"))প্রিন্ট("নম্বর লিখুন") রেঞ্জে i এর জন্য(int(n)):p=int(ইনপুট(" Size=")) A.append(int(p)) print (A)n=int(input("Enter Chunk Size"))my_final =[A[i * n:(i + 1) * n] i এর জন্য পরিসরে((len(A) + n - 1) // n )]প্রিন্ট ("খণ্ডের তালিকা:", my_final)
আউটপুট
লিস্টের মাপ লিখুন 6 নম্বরটি লিখুন সাইজ=23[23]সাইজ=34[23, 34]আকার=12[23, 34, 12]আকার=56[23, 34, 12, 56]আকার=33 [23, 34, 12, 56, 33] আকার =22[23, 34, 12, 56, 33, 22] খণ্ডের আকার 3 খণ্ডের তালিকা লিখুন:[[23, 34, 12], [56, 33, 22]