কম্পিউটার

Python - পরিবর্তনশীল দৈর্ঘ্যের 1D তালিকাকে 2D তালিকায় রূপান্তর করুন


পাইথনের একটি তালিকা সাধারণত একটি 1D তালিকা যেখানে উপাদানগুলি একের পর এক তালিকাভুক্ত হয়। কিন্তু একটি 2D তালিকায় আমরা বাইরের তালিকার ভিতরে তালিকাটি নেস্ট করেছি। এই প্রবন্ধে আমরা দেখব কিভাবে একটি প্রদত্ত 1D তালিকা থেকে একটি 2D তালিকা তৈরি করা যায়। আমরা প্রোগ্রামে 2D তালিকার ভিতরে উপাদানের সংখ্যার জন্য মানও সরবরাহ করি।

অ্যাপেন্ড এবং ইনডেক্স ব্যবহার করে

এই পদ্ধতিতে আমরা 2D তালিকার প্রতিটি উপাদানের মাধ্যমে লুপ করার জন্য একটি লুপ তৈরি করব এবং নতুন তালিকা তৈরি করার জন্য এটিকে একটি সূচক হিসাবে ব্যবহার করব। আমরা সূচকের মানকে শূন্য থেকে শুরু করে এবং 2D তালিকা থেকে যে উপাদানটি পাই তাতে যোগ করে এটিকে বৃদ্ধি করতে থাকি।

উদাহরণ

# Given list
listA = ['Sun','Mon','Tue','Wed','Thu','Fri','Sat']

# Length of 2D lists needed
len_2d = [ 2, 4]

#Declare empty new list
res = []
def convert(listA, len_2d):
   idx = 0
   for var_len in len_2d:
      res.append(listA[idx: idx + var_len])
      idx += var_len
convert(listA, len_2d)
print("The new 2D lis is: \n",res)

উপরের কোডটি চালানো আমাদের নিম্নলিখিত ফলাফল দেয় -

আউটপুট

The new 2D lis is:
[[1, 2], [3, 4, 5, 6]]

ইসলাইস ব্যবহার করা

আইলাইস ফাংশনটি 2D তালিকার প্রয়োজন অনুসারে নির্দিষ্ট সংখ্যক উপাদান সহ একটি প্রদত্ত তালিকাকে টুকরো টুকরো করতে ব্যবহার করা যেতে পারে। তাই এখানে সপ্তাহে 2D তালিকার প্রতিটি উপাদানের মধ্য দিয়ে দেখেছি এবং সেই মানটি ব্যবহার করুন 2 মূল তালিকাকে স্লাইস করুন। islice ফাংশন ব্যবহার করার জন্য আমাদের itertools প্যাকেজ দরকার।

উদাহরণ

from itertools import islice
# Given list
listA = ['Sun','Mon','Tue','Wed','Thu','Fri','Sat']

# Length of 2D lists needed
len_2d = [ 3, 2]

# Use islice
def convert(listA, len_2d):
   res = iter(listA)
   return [list(islice(res,i)) for i in len_2d]
res = [convert(listA, len_2d)]
print("The new 2D lis is: \n",res)

উপরের কোডটি চালানো আমাদের নিম্নলিখিত ফলাফল দেয় -

আউটপুট

The new 2D lis is:
[[['Sun', 'Mon', 'Tue'], ['Wed', 'Thu']]]

  1. পাইথন - স্ট্রিংয়ের তালিকাকে তালিকার তালিকায় রূপান্তর করুন

  2. পাইথন প্রোগ্রামে একটি তালিকাকে স্ট্রিংয়ে রূপান্তর করুন

  3. একটি তালিকাকে স্ট্রিং-এ রূপান্তর করতে পাইথন প্রোগ্রাম

  4. পাইথন অভিধানকে কীভাবে একটি তালিকায় রূপান্তর করবেন?