2014-04-01 10 views
10

अगर सुंदर प्रिंटिंग JSON के बारे में कुछ जानकारी वाले किसी को भी इससे मदद मिल सकती है तो मैं बहुत आभारी रहूंगा!सुंदर प्रिंट JSON पायथन

मैं एक फाइल करने के लिए JSON स्ट्रिंग ले जाने के लिए नीचे दिए गए समारोह का उपयोग कर, JSON प्रारूप में एक जटिल अजगर स्ट्रिंग परिवर्तित करने के लिए देख रहा हूँ:

with open('data.txt', 'wt') as out: 
    pprint(string, stream=out) 

समस्या यह है कि मैं के लिए वाक्यविन्यास त्रुटियों हो रही है स्क्वायर ब्रैकेट्स मेरा मानना ​​है, क्योंकि यह मेरे लिए एक नया विषय है और मैं यह नहीं समझ सकता कि इसे कैसे प्राप्त किया जाए। JSON प्रारूप मैं की आवश्यकता होती है इस तरह है:

{ 
     cols:[{id: 'Time', "label":"Time","type": "datetime"}, 
       {id: 'Time', "label":"Latency","type":"number"}], 
     rows:[{c: [{v: %s}, {v: %s}]}, 
       {c: [{v: %s}, {v: %s}]}, 
       {c: [{v: %s}, {v: %s}]}, 
       {c: [{v: %s}, {v: %s}]} 
       ] 
    } 

मैं गूगल विज़ुअलाइज़ेशन API अनुसरण कर रहा हूँ, आप इसे से परिचित हो सकता है, लेकिन मैं गतिशील रेखांकन की जरूरत है। उपर्युक्त कोड वह प्रारूप है जिसे एपीआई को ग्राफ बनाने की आवश्यकता है, इसलिए मैं यह समझने की प्रक्रिया में हूं कि MYSQL से मेरा डेटा कैसे प्राप्त करें, इसलिए ग्राफ पढ़ और प्रदर्शित किया जा सकता है। जिस विधि का मैंने सोचा था वह समय-समय पर आवश्यक JSON प्रारूप वाली फ़ाइल को अद्यतन करना था, यही कारण है कि% s मौजूद हैं, हालांकि मार्टिजन पॉइंट्स का सुझाव है कि यह अमान्य है।

क्या कोई मुझे सबसे आसान तरीका जानता है, या क्या आप मुझे किसी भी सामग्री को इंगित कर सकते हैं जो मदद कर सकता है? धन्यवाद!!

उत्तर

41

आप पायथन प्रतिनिधित्व लिख रहे हैं, JSON नहीं।

उपयोग json.dump() function सुंदर मुद्रित JSON बजाय लिखने के लिए, सीधे अपने फाइल करने के लिए:

with open('data.txt', 'wt') as out: 
    res = json.dump(obj, out, sort_keys=True, indent=4, separators=(',', ': ')) 
संबंधित मुद्दे