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

পাইথনে স্ট্রাকচার্ড স্ট্রিং থেকে প্রয়োজনীয় ডেটা এক্সট্র্যাক্ট করার টিউটোরিয়াল

ভূমিকা

স্ট্রাকচার্ড স্ট্রিং থেকে প্রয়োজনীয় ডেটা/ফিল্ড এক্সট্র্যাক্ট করার দুটি মেথড দেখাব। এই পদ্ধতিগুলো তখন কাজে আসে যখন ইনপুট স্ট্রাকচার 아는 ফরম্যাটে থাকে।

পদ্ধতি ১: split() ব্যবহার করে

  1. একটি ডামি ফরম্যাট তৈরি করি:
    Report: <> - Time: <> - Player: <> - Titles: - Country: <>
    Report: Daily_Report - Time: 2020-10-16T01:01:01.000001 - Player: Federer - Titles: 20 - Country: Switzerland
    
  2. সেপারেটর " - " দিয়ে স্প্লিট করুন:
    report = 'Report: Daily_Report - Time: 2020-10-10T12:30:59.000000 - Player: Federer - Titles: 20 - Country: Switzerland'
    fields = report.split(' - ')
    name, time, player, titles, _ = fields
    print(f"Output \n *** The report name {name} generated on {time} has {titles} titles for {player}. ")
    
  3. আউটপুটে লেবেলগুলো (Report:, Time:, Player:) রয়েছে। এগুলো সরাতে প্রতিটি ফিল্ডকে আবার ":" দিয়ে স্প্লিট করুন:
    formatted_name = name.split(':')[1]
    formatted_player = player.split(':')[1]
    formatted_titles = int(titles.split(':')[1])
    new_time = time.split(': ')[1]
    print(f"Output \n {formatted_name} , {new_time}, {formatted_player} , {formatted_titles}")
    
    আউটপুট: Daily_Report , 2020-10-10T12:30:59.000000, Federer , 20
  4. টাইমস্ট্যাম্প ISO ফরম্যাটে। চাইলে datetime দিয়ে পার্স করুন:
    from datetime import datetime
    formatted_date = datetime.fromisoformat(new_time)
    print(formatted_date)  # 2020-10-10 12:30:59
    
  5. সব স্টেপ এক ফাংশনে একত্রিত করুন।

পদ্ধতি ২: parse মডিউল ব্যবহার করে (সহজতর)

  1. pip install parse দিয়ে ইনস্টল করুন।
  2. টেমপ্লেট ডিফাইন করে parse করুন:
    from parse import parse
    
    report = 'Report: Daily_Report - Time: 2020-10-10T12:30:59.000000 - Player: Federer - Titles: 20 - Country: Switzerland'
    template = 'Report: {name} - Time: {time} - Player: {player} - Titles: {titles} - Country: {country}'
    data = parse(template, report)
    print(data)  # 
    
  3. ইনডিভিজুয়াল ভ্যালু এক্সেস করুন:
    print(f"{data['name']} - {data['time']} - {data['player']} - {data['titles']} - {data['country']}")
    
    আউটপুট: Daily_Report - 2020-10-10T12:30:59.000000 - Federer - 20 - Switzerland

উপসংহার

লগ ফাইল থেকে প্রয়োজনীয় ডেটা পার্স করার দুটি পদ্ধতি দেখানো হয়েছে। টেমপ্লেট ডিফাইন করে parse মডিউল ব্যবহার করা সহজ ও পঠনযোগ্য।

  1. Matplotlib প্লট থেকে ডেটা এক্সট্রাক্ট করার পদ্ধতি

  2. পাইথনে দুটি স্ট্রিং কনক্যাটেনেট করার পদ্ধতি

  3. পাইথনে উইকিপিডিয়া ডেটা এক্সট্র্যাক্ট করা

  4. সহজে ওয়েবসাইট ডেটা এক্সেলে অটোমেটিক্যালি ইনপুট করুন