Why do I get the u"xyz" format when I print a list of unicode strings in Python? -
कृपया निम्नलिखित व्यवहार का पालन करें:
a = u "foo" b = u " B \ xe1r "# \ xe1 एक उच्चारण के साथ एक 'ए' है s = [a, b] print a, b प्रिंट s s में s: print x,
परिणाम है :
foo bár [u'foo ', u'b \ xe1r'] foo bár
जब मैं बस वैल्यू में बैठे दो मान मुद्रित करता हूँ < कोड> एक और b
, मुझे मिल रहा है जो मुझे उम्मीद है; जब मैंने एक स्ट्रिंग मान को सूची में डाल दिया और उसे प्रिंट किया, तो मुझे अवांछित u "xyz"
फ़ॉर्म मिलता है; अंत में, जब मैं सूची से एक पाश के साथ मूल्यों को मुद्रित करता हूं, तो मुझे पहले प्रपत्र मिल जाता है। क्या कोई इस प्रतीत होता है अजीब व्यवहार को समझा सकता है? मुझे पता है कि शायद एक अच्छा कारण है।
जब आप एक सूची मुद्रित करते हैं, तो आपको repr ()
प्रत्येक तत्व की सूची वास्तव में मुद्रित नहीं होती है, इसलिए अजगर इसकी संरचना के कुछ प्रतिनिधि को मुद्रित करने की कोशिश करता है।
यदि आप इसे किसी विशेष तरीके से प्रारूपित करना चाहते हैं, तो कैसे आप इसे स्वरूपित करना चाहते हैं, या इसकी __ repr __
विधि को ओवरराइड करना स्पष्ट है।
Comments
Post a Comment