2012-09-07 9 views
7

में सूचीबद्ध करने के लिए संलग्न कुंजी के रूप में नाम और सभी संबंधित वस्तुओं की एक सूची के रूप में नाम।मैं सूचियों जो एक defaultdict में मान रहे हैं करने के लिए वस्तुओं संलग्न करने के लिए कोशिश कर रहा हूँ defaultdict

लेकिन इसके बाद के संस्करण कोड एक AttributeError को जन्म देती है:

dic[mygroup] = dic[mygroup].append(entry) 
AttributeError: 'NoneType' object has no attribute 'append' 

तो यह किसी कारण के लिए की तरह लग रहा है, मानों सूची के रूप में मान्यता प्राप्त नहीं कर रहे हैं?

क्या किसी शब्दकोश या डिफ़ॉल्ट डिक्शनरी में मान के रूप में उपयोग की जाने वाली सूचियों में शामिल करने का कोई तरीका है? (मैंने इसे पहले सामान्य नियम के साथ आजमाया है, और एक ही त्रुटि मिली है।)

किसी भी मदद के लिए धन्यवाद! Lastalda

उत्तर

14

if entry.mygroup == mygroup: 
    dic[mygroup].append(entry) 

उसी तरह आप किसी भी सूची पर append का उपयोग करें कि कोशिश करो। append कुछ भी वापस नहीं करता है, इसलिए जब आप dic[mygroup] पर परिणाम असाइन करते हैं, तो यह None में बदल जाता है। अगली बार जब आप इसे जोड़ने का प्रयास करेंगे, तो आपको त्रुटि मिल जाएगी।

संबंधित मुद्दे

 संबंधित मुद्दे