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

পাইথন: ডিলিমিটারযুক্ত স্ট্রিংয়ের লিস্টকে টাপলের লিস্টে রূপান্তর করা

যখন একটি লিস্টের স্ট্রিংগুলোর মধ্যে নির্দিষ্ট ডিলিমিটার (বিভাজক) থাকে এবং সেগুলোকে টাপলের লিস্টে রূপান্তর করতে হয়, তখন লিস্ট কম্প্রিহেনশন এবং split() মেথড ব্যবহার করা হয়।

উদাহরণ

my_list = ["33-22", "13-44-81-39", "42-10-42", "36-56-90", "34-77-91"]
print("মূল লিস্ট:", my_list)

# লিস্ট সর্ট করা (ঐচ্ছিক)
my_list.sort()
print("সর্ট করা লিস্ট:", my_list)

# ডিলিমিটার
delimiter = "-"

# লিস্ট কম্প্রিহেনশন দিয়ে টাপলের লিস্টে রূপান্তর
result = [tuple(int(x) for x in s.split(delimiter)) for s in my_list]

print("ফলাফল:", result)

আউটপুট

মূল লিস্ট: ['33-22', '13-44-81-39', '42-10-42', '36-56-90', '34-77-91']
সর্ট করা লিস্ট: ['13-44-81-39', '33-22', '34-77-91', '36-56-90', '42-10-42']
ফলাফল: [(13, 44, 81, 39), (33, 22), (34, 77, 91), (36, 56, 90), (42, 10, 42)]

ব্যাখ্যা

  1. s.split(delimiter) — প্রতিটি স্ট্রিংকে ডিলিমিটার দিয়ে ভাগ করে
  2. int(x) for x in ... — প্রতিটি অংশকে ইন্টিজারে রূপান্তর করে
  3. tuple(...) — ইন্টিজারগুলোর লিস্টকে টাপলে রূপান্তর করে
  4. বাইরের লিস্ট কম্প্রিহেনশন — পুরো লিস্টের উপর এটি প্রয়োগ করে

ত্রুটি হ্যান্ডলিং সহ সংস্করণ

def safe_convert(lst, delimiter="-"):
    result = []
    for s in lst:
        try:
            parts = tuple(int(x) for x in s.split(delimiter))
            result.append(parts)
        except ValueError:
            print(f"স্ট্রিং '{s}' কে ইন্টিজারে রূপান্তর করা যায়নি")
            result.append(None)
    return result

এটি বাস্তব অ্যাপ্লিকেশনে নিরাপদে ব্যবহার করা যাবে।

  1. পাইথনে স্ট্রিং লিস্টের এলিমেন্টের কেস রূপান্তর

  2. পাইথনে লিস্টকে লিস্টের টাপলে রূপান্তর

  3. পাইথনে লিস্টকে টাপলে রূপান্তর

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