मुझे एक शब्दकोश को एक फ़ाइल में सहेजने की ज़रूरत है, शब्दकोश में तार, पूर्णांक और शब्दकोश हैं।
मैंने इसे अपने और यह किया है नहीं उपयोगकर्ता के लिए सुंदर और अच्छा है।
मुझे अचार के बारे में पता है लेकिन जैसा कि मुझे पता है कि इसका उपयोग सुरक्षित नहीं है, क्योंकि अगर कोई है फ़ाइल को प्रतिस्थापित करें और मैं (या कोई और) फ़ाइल का उपयोग करेगा जो इसका उपयोग करता है फ़ाइल बदल दी, यह चल रहा है और कुछ चीजें कर सकता है। यह सिर्फ सुरक्षित नहीं है।
क्या कोई और कार्य या आयातित चीज है जो यह करती है।
उत्तर:
जवाब के लिए 5 № 1जब अचार सुरक्षित नहीं है एक अविश्वसनीय तृतीय पक्ष द्वारा स्थानांतरित। स्थानीय फाइलें ठीक हैं, और यदि कुछ आपके फाइल सिस्टम पर फ़ाइलों को प्रतिस्थापित कर सकता है तो आपके पास एक अलग समस्या है।
उस ने कहा, यदि आपके शब्दकोश में स्ट्रिंग कुंजियों के अलावा कुछ भी नहीं है और मान कुछ भी नहीं हैं लेकिन पायथन सूची, संख्याएं, तार या अन्य शब्दकोश हैं, तो JSON का उपयोग करें json
मॉड्यूल.
जवाब के लिए 0 № 2
आपके शब्दकोश को प्रस्तुत करने में केवल मूल डेटा प्रकार होते हैं, सामान्य उत्तर होता है json
, यह इस तरह की चीज़ के लिए एक लोकप्रिय, अच्छी तरह से परिभाषित भाषा है।
यदि आपके शब्दकोश में अधिक जटिल डेटा है, तो आपको इसे कम से कम तरीके से क्रमबद्ध करना होगा।
जवाब के लिए 0 № 3
जेएसओएन कई कारणों से काफी पायथन नहीं है:
- यह सभी पायथन डेटा प्रकारों को लपेट / अनचाहे नहीं कर सकता है: सेट्स या टुपल्स के लिए कोई समर्थन नहीं है।
- पर्याप्त तेज़ नहीं है क्योंकि इसे टेक्स्ट डेटा और एन्कोडिंग से निपटने की आवश्यकता है।
उपयोग करने का प्रयास करें sPickle बजाय।