शुरू करेंमुफ़्त में शुरू करें

डेटा स्टोर करने के लिए namedtuples बनाना

अक्सर डेटा के साथ काम करते समय, आप डिक्शनरी का इस्तेमाल सिर्फ इसलिए करते हैं ताकि key नामों से कोड पढ़ना और डेटा एक्सेस करना आसान हो जाए। Python में एक और कंटेनर होता है जिसे namedtuple कहते हैं। यह एक tuple ही है, लेकिन tuple की हर पोज़िशन के लिए नाम होते हैं। आप इसे tuple टाइप का नाम और फील्ड नामों की एक लिस्ट पास करके बनाते हैं.

उदाहरण के लिए, Cookie = namedtuple("Cookie", ['name', 'quantity']) एक कंटेनर बनाएगा, और आप उसी टाइप का नया ऑब्जेक्ट Cookie('chocolate chip', 1) से बना सकते हैं, जहाँ आप name एट्रिब्यूट से नाम एक्सेस कर सकते हैं और quantity एट्रिब्यूट से मात्रा पा सकते हैं.

इस अभ्यास में, आप पेंगुइन वज़न लॉग डेटा को, जिस पर आप काम कर रहे थे, ज्यादा वर्णनात्मक कोड के लिए namedtuples में री-स्ट्रक्चर करेंगे.

यह अभ्यास पाठ्यक्रम का हिस्सा है

Python में डेटा टाइप्स

पाठ्यक्रम देखें

अभ्यास निर्देश

  • collections से namedtuple इम्पोर्ट करें.
  • SpeciesDetails नाम का एक namedtuple बनाएँ, जिसका टाइप नाम SpeciesDetails हो और फील्ड्स 'species', 'sex', और 'body_mass' हों.
  • labeled_entries नाम की एक लिस्ट बनाएँ.
  • weight_log लिस्ट पर इटरेट करें, उसे species, sex, और body_mass में अनपैक करें, हर एंट्री के लिए एक नया SpeciesDetails namedtuple इंस्टेंस बनाएँ और उसे labeled_entries में जोड़ें.

इंटरैक्टिव व्यावहारिक अभ्यास

इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।

# Import namedtuple from collections
from collections import ____

# Create the namedtuple: SpeciesDetails
SpeciesDetails = ____(____, ['species', 'sex', 'body_mass'])

# Create the empty list: labeled_entries
labeled_entries = []

# Iterate over the weight_log entries
for ____, ____, ____ in ____:
    # Append a new SpeciesDetails namedtuple instance for each entry to labeled_entries
    ____
    
print(labeled_entries[:5])
कोड संपादित करें और चलाएँ