# -*- coding: utf-8 -*-
a = 'éáűőúöüó€'
print type(a) # <type 'str'>
print a # éáűőúöüó€
print ord(a[-1]) # 172
यह क्यों काम कर रहा है? यह SyntaxError: Non-ASCII character '\xc3' in file ...
नहीं होना चाहिए? स्ट्रिंग में यूनिकोड अक्षर हैं।पाइथन दुभाषिया में इन तारों को आंतरिक रूप से कैसे प्रदर्शित किया जाता है? मुझे समझ में नहीं आता
जब मैंने इसे u
साथ उपसर्ग, परिणाम भिन्न हैं:
# -*- coding: utf-8 -*-
a = u'éáűőúöüó€'
print type(a) # <type 'unicode'>
print a # éáűőúöüó€
print ord(a[-1]) # 8364
क्यों? पायथन में आंतरिक प्रतिनिधित्व के बीच क्या अंतर है? मैं इसे खुद कैसे देख सकता हूं? :)
क्यों यह होना चाहिए एक वाक्यविन्यास त्रुटि हो एक बाइट स्ट्रिंग में बाइट्स है? – geoffspear
ठीक है, तो पहली स्ट्रिंग क्या है और दूसरा क्या है? – kissgyorgy
पहला एक 'str' ऑब्जेक्ट है जिसमें फ़ाइल में यूटीएफ -8 बाइट शामिल हैं। दूसरा यूटीएफ -8 को डीकोड करके गठित 'यूनिकोड' ऑब्जेक्ट है। अंतर देखने के लिए 'repr()' का उपयोग करें। – geoffspear