Str () फ़ंक्शन दिए गए ऑब्जेक्ट का स्ट्रिंग संस्करण लौटाता है।
का सिंटैक्स str()
है:
str (ऑब्जेक्ट, एन्कोडिंग = 'utf-8', त्रुटियाँ = 'सख्त')
str () पैरामीटर
str()
विधि तीन पैरामीटर लेता है:
- ऑब्जेक्ट -
object
जिसका स्ट्रिंग प्रतिनिधित्व वापस करना है। यदि प्रदान नहीं किया गया है, तो खाली स्ट्रिंग लौटाता है - एन्कोडिंग - दी गई वस्तु का एनकोडिंग। यूटीएफ -8 की चूक जब प्रदान नहीं की जाती है।
- त्रुटियां - डिकोडिंग विफल होने पर प्रतिक्रिया दें। के लिए चूक
'strict'
।
छह प्रकार के होते हैं errors
:
- सख्त - डिफ़ॉल्ट प्रतिक्रिया जो
UnicodeDecodeError
विफलता पर एक अपवाद उठाती है - नजरअंदाज करें - परिणाम से असंबद्ध यूनिकोड की उपेक्षा करता है
- प्रतिस्थापित करें - unencodable यूनिकोड की जगह एक प्रश्न चिह्न
- xmlcharrefreplace - बिना यूनिकोड के XML वर्ण संदर्भ सम्मिलित करता है
- backslashreplace -
uNNNN
अनएन्कोडेबल यूनिकोड के बजाय एक एस्पास अनुक्रम सम्मिलित करता है - namereplace -
N(… )
unencodable Unicode के बजाय एक एस्केप अनुक्रम सम्मिलित करता है
Str से वापसी मान ()
str()
विधि एक स्ट्रिंग है, जो दिए गए वस्तु की एक अनौपचारिक या अच्छी तरह से प्रिंट करने योग्य प्रतिनिधित्व माना जाता है देता है।
उदाहरण 1: स्ट्रिंग में कनवर्ट करें
यदि एन्कोडिंग और त्रुटियां पैरामीटर प्रदान नहीं की जाती हैं, तो str()
आंतरिक रूप __str__()
से किसी ऑब्जेक्ट की विधि को कॉल करता है ।
यदि इसे __str__()
विधि नहीं मिल रही है, तो यह बदले में repr (obj) कहता है।
result = str(10) print(result)
आउटपुट
१०
नोट: परिणाम चर में एक स्ट्रिंग होगी।
पायथन कंसोल पर इन कमांड को भी आज़माएं।
>>> str ('एडम')
>>> str (b'Python! ')
उदाहरण 2: बाइट्स के लिए कैसे str () काम करता है?
यदि encoding
और errors
पैरामीटर प्रदान किया जाता है, तो पहला पैरामीटर, ऑब्जेक्ट , एक बाइट्स-जैसे-ऑब्जेक्ट (बाइट्स या बायटियर) होना चाहिए ।
यदि ऑब्जेक्ट बाइट्स या बायटियर है , तो str()
आंतरिक रूप से कॉल करता है bytes.decode(encoding, errors)
।
अन्यथा, यह decode()
विधि को कॉल करने से पहले बफर में बाइट्स ऑब्जेक्ट प्राप्त करता है ।
# bytes b = bytes('pythön', encoding='utf-8') print(str(b, encoding='ascii', errors='ignore'))
आउटपुट
अजगर
यहाँ, 'ö'
ASCII द्वारा वर्ण को डिकोड नहीं किया जा सकता है। इसलिए, यह एक त्रुटि देना चाहिए। हालाँकि, हमने निर्धारित किया है errors ='ignore'
। इसलिए, पायथन चरित्र को अनदेखा करता है जिसे द्वारा डिकोड नहीं किया जा सकता है str()
।