2009-04-26 9 views
62

मैं पाइथन के JSON मॉड्यूल का उपयोग करना चाहता हूं। इसे केवल पायथन 2.6 में पेश किया गया था और मैं अब 2.5 के साथ अटक गया हूं। क्या विशेष JSON मॉड्यूल पाइथन 2.6 के साथ एक अलग मॉड्यूल के रूप में उपलब्ध है जिसे 2.5 के साथ उपयोग किया जा सकता है?पायथन 2.5 में कौन सा JSON मॉड्यूल उपयोग कर सकता हूं?

उत्तर

62

आप simplejson का उपयोग कर सकते हैं।

the answer रूप pkoch द्वारा दिखाए गए के रूप में आप एक json पुस्तकालय स्थापित अजगर संस्करण के आधार पर प्राप्त करने के लिए निम्न आयात कथन का उपयोग कर सकते हैं:

try: 
    import json 
except ImportError: 
    import simplejson as json 
+1

धन्यवाद! इतने सारे जेसन मॉड्यूल थे, मुझे यकीन नहीं था कि पाइथन 2.6 में इस्तेमाल किया गया था। – marcog

+1

यहां देर से रास्ता, लेकिन स्थापित पाइथन संस्करण के आधार पर या तो जेसन या सरलजॉन आयात करने के लिए आप एक स्क्रिप्ट कैसे लिख सकते हैं? – Wells

+3

@Wells: 'कोशिश करें: आयात जेसन; ImportError को छोड़कर: आयात simplejson' - इंडेंटेशन त्रुटियों का क्षमा करें। – kojiro

1

मैं इसे के बाद से cjson पसंद करते हैं बहुत तेजी से है: http://www.vazor.com/cjson.html

+1

में संपादित करने से पहले इस जवाब को 60 अपवॉट प्राप्त किए हैं, हालांकि मैं 2.6 के साथ प्रदान की गई डिफ़ॉल्ट लाइब्रेरी के साथ संगत रहना चाहता हूं, अन्यथा मैं आपसे सहमत हूं। – marcog

49

करने के लिए वेल्स और दूसरों:

Way late here, but how can you write a script to import either json or simplejson depending on the installed python version?

ऐसे करें:

 
try: 
    import json 
except ImportError: 
    import simplejson as json 

+0

ठीक है, मैं इसे दूसरी तरफ कर दूंगा क्योंकि सरलजसन का तेज कार्यान्वयन होता है। यदि आपके पास पाइथन> = 2.6 पर सरलजॉन है तो आपको जेसन के बजाय इसे अधिमानतः उपयोग करना चाहिए। – schlamar

+1

प्रत्येक व्यक्ति प्रदर्शन टिनफिल टोपी का उपयोग करता है। मैं सिर्फ stdlib पसंद करते हैं क्योंकि यह stdlib है। असहमत होने और बेंचमार्क प्रदान करने के लिए स्वतंत्र महसूस करें ताकि अन्य आपके साथ सहमत हो सकें। – pkoch

+3

सरलजसन में सी एक्सटेंशन है, यहां कोई बेंचमार्क की आवश्यकता नहीं है ;-) यदि सी एक्सटेंशन संकलित नहीं किया गया है (उदाहरण के लिए इंस्टॉलेशन पर कंपाइलर गायब है) यह बिल्कुल वही लाइब्रेरी है। Http://pypi.python.org/pypi/simplejson/ देखें। – schlamar

4

मैं cjson 1.0.6 पैच लिखा था और मेरी सलाह cjson का उपयोग नहीं करते है - वहाँ में यह कैसे यूनिकोड आदि संभालती cjson के साथ अन्य समस्याओं कर रहे हैं मुझे नहीं लगता कि cjson की गति के साथ काम कर के लायक है है कीड़े - एन्कोडिंग/डिकोडिंग json आमतौर पर है समय एक ठेठ वेब अनुरोध पर कार्रवाई करने के लिए आवश्यक का एक बहुत छोटा सा ... अजगर में

json 2.6+ मूल रूप से मानक पुस्तकालय मेरा मानना ​​है कि ...

में लाया simplejson है
-1

मैं पाइथन 2.5 में भी प्रोग्रामिंग कर रहा हूं और एक उपयुक्त पुस्तकालय चाहता था। यहाँ देखें कि मैंने यह कैसे किया।

http://pypi.python.org/simple/simplejson/

से simplejson अंडा simplejson-2.0.6-py2.5-linux-i686.egg बुलाया फ़ाइल donwloaded आदेश का उपयोग कर इसे स्थापित:

sudo python ./ez_setup.py ./simplejson-2.0.6-py2.5-linux-i686.egg

फिर आयातित ऐसा करके स्क्रिप्ट फ़ाइल में json पुस्तकालय:

import sys 
sys.path.append("/home/coolkid/Android/simplejson/simplejson-2.0.6-py2.5-linux-i686.egg") 
try: import simplejson as json 
except ImportError: print ("import error") 
संबंधित मुद्दे