Python, add dictionary to JSON file -


मेरे पास JSON फाइल है, ऐसा लगता है:

  [{"lon": 0.0, "ऊंचाई": 39000,}, {"lon": 0.0, "ऊंचाई": 41000,}]  

और मैं इस फ़ाइल को स्थानीय रूप से सहेजना चाहता हूं और स्रोत फ़ाइल से अपडेट करना चाहता हूं। उदाहरण के लिए: ताज़ा स्रोत फ़ाइल का नया डेटा है:

  [{"lon": 19.84227, "ऊंचाई": 41000,}, {"lon": 20.068794, "ऊंचाई": 38000,} ]  

फ़ाइल के अंत में 2 नए शब्दकोश जोड़ने के लिए स्थानीय JSON फ़ाइल को कैसे जोड़ें:

  [{values}, {values} , & Lt; & lt; & lt; "," और शब्दकोशों का नया भाग {values}, {values} [ 

मैं JSON फ़ाइलों को जोड़ने की कोशिश कर रहा हूं लेकिन मेरे पास यह है:

  [। ...] [& lt; & lt; [और] फ़ाइल के अंतराल और अंत में ही होना चाहिए ....]  

कैसे?

मुझे सरल समाधान मिला:

नए डेटा के साथ JSON फाइल संलग्न करें:

  आयात ओएस, खुले के साथ json ('data.json ',' ए ') के रूप में एफपी: json.dump (j_data, fp, इंडेंट = 2) fp.close () f = ओपन (' data.json ',' r ') old_data = f.read () f.close ()  

खोज "] [" और इसे ","

<पूर्व> new_data = old_data.replace ("] [", ",") के साथ बदलें।

नई फ़ाइल के रूप में सहेजें

  f = open ('data_new.json', 'w') f.write (new_data) f.close ()  

पुरानी फाइल को हटाना और नई फ़ाइल का नाम बदलें

  os.remove ('data.json') os.rename ('data_new.json', 'data .json ')  

Comments

Popular posts from this blog

python - Overriding the save method in Django ModelForm -

html - CSS autoheight, but fit content to height of div -

qt - How to prevent QAudioInput from automatically boosting the master volume to 100%? -