PostgreSQL
 sql >> डेटाबेस >  >> RDS >> PostgreSQL

मैं यह देखने के लिए एक पायथन यूनिकोड स्ट्रिंग कैसे देख सकता हूं कि यह *वास्तव में* उचित यूनिकोड है?

एक बग है अजगर 2.x में जो केवल निश्चित है अजगर 3.x। वास्तव में, यह बग OS X के iconv में भी है (लेकिन glibc वाला नहीं)।

यहाँ क्या हो रहा है:

पायथन 2.x UTF8 सरोगेट जोड़े [1] को अमान्य होने के रूप में नहीं पहचानता है (जो कि आपका चरित्र अनुक्रम है)

यह चाहिए वह सब हो जो आवश्यक हो:

foo.decode('utf8').encode('utf8')

लेकिन उस बग के लिए धन्यवाद जिसे वे ठीक नहीं कर रहे हैं, यह सरोगेट जोड़े को नहीं पकड़ता है।

इसे अजगर 2.x में और फिर 3.x में आज़माएं:

b'\xed\xbd\xbf'.decode('utf8')

यह बाद में एक त्रुटि (सही ढंग से) फेंक देगा। वे इसे 2.x शाखा में भी ठीक नहीं कर रहे हैं। अधिक जानकारी के लिए [2] और [3] देखें

[1] https://www.rfc-editor.org/rfc/ rfc3629#सेक्शन-4

[2] http://bugs.python.org/issue9133

[3] http://bugs.python.org/issue8271#msg102209



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Postgresql COPY कमांड देते हुए अनुमतियाँ त्रुटि से इनकार करती हैं

  2. regexp_matches घुंघराले कोष्ठक लौटने से छुटकारा पाने का बेहतर तरीका

  3. पोस्टग्रेज में टाइपओआरएम सरणी समर्थित नहीं है?

  4. PostgreSQL तक पहुँचने के लिए Paramiko के साथ SSH टनल सेट करें

  5. PostgreSQL में छवियाँ संग्रहीत करना