संभव डुप्लिकेट:
Changing default encoding of python?पायथन में डिफ़ॉल्ट एन्कोडिंग कैसे सेट करें (setdefaultencoding() फ़ंक्शन मौजूद नहीं है)?
मैं अजगर में गोता पढ़ रहा हूँ और यह अध्याय XML पार्स में अजगर के डिफ़ॉल्ट एन्कोडिंग स्कीम की स्थापना का उल्लेख।
setdefaultencodingअजगर से स्थापित-निर्देशिका/साइट-संकुल में प्रयोग किया जाता है/pyanaconda/sitecustomize.py
import sys
sys.setdefaultencoding('utf-8')
लेकिन जब मैं स्क्रिप्ट चलाने, यह उठता है:
AttributeError: 'module' object has no attribute 'setdefaultencoding'
डिफ़ॉल्ट एन्कोडिंग कैसे सेट करें, वैसे भी?
मैं अजगर का उपयोग कर रहा 2,7
समाधान: अजगर स्थापना में site.py पाते हैं।
संपादित setencoding समारोह
def setencoding():
encoding = "ascii"
if 0:
import locale
loc = locale.getdefaultlocale()
if loc[1]:
encoding = loc[1]
if 0: #changes comes here, change 0 to 1
encoding = "undefined" #the encoding you want
if encoding != "ascii":
sys.setdefaultencoding(encoding)
मैं अजगर 2.7
ऐसा लगता है कि sys मॉड्यूल में setdefaultencoding फ़ंक्शन नहीं है। मैंने पथ शामिल किया है जिसमें sitecustomize.py है। जब मैंने स्क्रिप्ट चलायी, तो यह अभी भी वही त्रुटि उठाता है। – xiaohan2012
मुझे मिले सभी विकल्पों में से, यह वह जवाब है जो मेरे लिए काम करता है। मैंने बस सामग्री के साथ 'sitecustomize.py' फ़ाइल बनाई है। मैं virtualenvwrapper का उपयोग कर रहा हूं इसलिए मैंने फ़ाइल को 'virtualenvs/virtualenv-name/lib/python2.7/'में क्रमित किया, जहां _virtualenv-name_ रिलीज वर्चुअलएन्व का नाम है। फिर भी, 'sitecustomize.py' का पता लगाएं आपको बता सकता है कि फ़ाइल कहां है। – kiril