पायथन 3 ने यूनिकोड व्यवहार को सरोगेट जोड़े को अस्वीकार करने के लिए बदल दिया जबकि python2 नहीं।python2 में surrogateescape कैसे करें
एक सवाल here
नहीं है लेकिन यह कैसे को Python2 या कैसे सरोगेट बच करने के लिए किराए की जोड़े को दूर करने पर एक समाधान नहीं दे रहे हों।
python3 उदाहरण:
>>> a = b'\xed\xa0\xbd\xe4\xbd\xa0\xe5\xa5\xbd'
>>> a.decode('utf-8', 'surrogateescape')
'\udced\udca0\udcbd你好'
>>> a.decode('utf-8', 'ignore')
'你好'
'\ निश्चित \ xa0 \ xbd' यहाँ उचित utf-8 वर्ण नहीं है। और मैं उन्हें अनदेखा करना चाहता हूं या उनसे बचना चाहता हूं।
क्या यह Python2 में एक ही चीज़ करना संभव है?
पाया जा सकता है वास्तव में क्या आप क्या करना चाहते हैं? यह स्पष्ट नहीं है। एक उदाहरण प्रदान करें। –
@MarkTolonen मैंने एक उदाहरण जोड़ा है। – lxyu
मुझे '\ udc00' और '\ udfff' के बीच सभी वर्णों को हटाने के लिए डीकोडेड यूनिकोड ऑब्जेक्ट को पोस्ट-प्रोसेस करने से बेहतर तरीका दिखाई नहीं देता है। –