Python Type Conversion and Type Casting
या लेखात आपण प्रकार रूपांतरण आणि प्रकार रूपांतरणांच्या वापराबद्दल शिकू शकाल.
पायथनमध्ये टाइप रूपांतरण शिकण्यापूर्वी तुम्हाला पायथन डेटा प्रकारांविषयी माहिती असणे आवश्यक आहे.
Type Conversion
एका डेटा प्रकाराचे मूल्य (पूर्णांक, स्ट्रिंग, फ्लोट इ.) दुसर्या डेटा प्रकारात रूपांतरित करण्याच्या प्रक्रियेस टाइप रूपांतरण असे म्हणतात. पायथनमध्ये दोन प्रकारांचे रूपांतरण आहे.
1)अप्रत्यक्ष प्रकार रूपांतरण
2)सुस्पष्ट प्रकार रूपांतरण
Implicit Type Conversion
अप्रत्यक्ष प्रकार रूपांतरणात, पायथन एक डेटा प्रकार स्वयंचलितपणे दुसर्या डेटा प्रकारात रूपांतरित करते. या प्रक्रियेस कोणत्याही वापरकर्त्याच्या सहभागाची आवश्यकता नाही.
डेटा तोटा टाळण्यासाठी पायथन कमी डेटा प्रकार (पूर्णांक) उच्च डेटा प्रकार (फ्लोट) मध्ये रूपांतरित करते असे एक उदाहरण पाहूया.
Example 1: Converting integer to float
num_int = 123
num_flo = 1.23
num_new = num_int + num_flo
print("datatype of num_int:",type(num_int))
print("datatype of num_flo:",type(num_flo))
print("Value of num_new:",num_new)
print("datatype of num_new:",type(num_new))
जेव्हा आपण वरील प्रोग्राम चालवितो, आउटपुट असे होईलः
datatype of num_int: <class 'int'> datatype of num_flo: <class 'float'> Value of num_new: 124.23 datatype of num_new: <class 'float'>
वरील कार्यक्रमात,
आम्ही num_new मध्ये व्हॅल्यू संचित करून num_int आणि num_flo ही दोन व्हेरिएबल्स जोडू.
आम्ही अनुक्रमे तिन्ही वस्तूंचा डेटा प्रकार बघू.
आऊटपुटमध्ये num_int चा डेटा प्रकार पूर्णांक दिसेल तर num_flo चा डेटा प्रकार एक फ्लोट असतो.
तसेच, आम्ही पाहू शकतो की num_new मध्ये एक फ्लोट डेटा प्रकार आहे कारण डेटा नष्ट होणे टाळण्यासाठी पायथन नेहमीच लहान डेटा प्रकारांना मोठ्या डेटा प्रकारांमध्ये रूपांतरित करते.
आता आपण स्ट्रिंग आणि पूर्णांक जोडण्याचा प्रयत्न करू आणि पायथन त्याच्याशी कशा प्रकारे व्यवहार करते ते पाहू
Example 2: Addition of string(higher) data type and integer(lower) datatype
num_int = 123
num_str = "456"
print("Data type of num_int:",type(num_int))
print("Data type of num_str:",type(num_str))
print(num_int+num_str)
जेव्हा आपण वरील प्रोग्राम चालवितो, आउटपुट असे होईलः
Data type of num_int: <class 'int'> Data type of num_str: <class 'str'> Traceback (most recent call last): File "python", line 7, in <module> TypeError: unsupported operand type(s) for +: 'int' and 'str'
जेव्हा आपण वरील प्रोग्राम चालवितो, आउटपुट असे होईलः
आम्ही num_int आणि num_str ही दोन व्हेरिएबल्स जोडू.
आऊटपुटवरून आपल्याला दिसेल की, आपल्याला टाइप-एरर मिळाला. पायथन अशा परिस्थितीत अप्रत्यक्ष रूपांतरण वापरण्यास सक्षम नाही.
तथापि, पायथनकडे अशा प्रकारच्या परिस्थितींसाठी एक उपाय आहे ज्याला स्पष्ट रूपांतरण म्हणून ओळखले जाते.
वरील कार्यक्रमात,
आम्ही num_int आणि num_str ही दोन व्हेरिएबल्स जोडू.
आऊटपुटवरून आपल्याला दिसेल की, आपल्याला टाइप-एरर मिळाला. पायथन अशा परिस्थितीत अप्रत्यक्ष रूपांतरण वापरण्यास सक्षम नाही.
तथापि, पायथनकडे अशा प्रकारच्या परिस्थितींसाठी एक उपाय आहे ज्याला स्पष्ट रूपांतरण म्हणून ओळखले जाते.
Explicit Type Conversion
सुस्पष्ट प्रकार रूपांतरणात, वापरकर्ते ऑब्जेक्टचा डेटा प्रकार आवश्यक डेटा प्रकारात रूपांतरित करतात. आम्ही स्पष्ट प्रकार रूपांतरण करण्यासाठी इंट (), फ्लोट (), स्ट्र () इत्यादी यासारख्या पूर्वनिर्धारित फंक्शन्सचा वापर करतो.
या प्रकारच्या रूपांतरणास टाईपकास्टिंग असेही म्हणतात कारण वापरकर्ता ऑब्जेक्टचा डेटा प्रकार (बदल) करतो.
Syntax :
<required_datatype>(expression)
टायपेकस्टिंग आवश्यक डेटा प्रकार फंक्शनला अभिव्यक्तीसाठी निर्दिष्ट करुन केले जाऊ शकते.
Example 3: Addition of string and integer using explicit conversion
num_int = 123
num_str = "456"
print("Data type of num_int:",type(num_int))
print("Data type of num_str before Type Casting:",type(num_str))
num_str = int(num_str)
print("Data type of num_str after Type Casting:",type(num_str))
num_sum = num_int + num_str
print("Sum of num_int and num_str:",num_sum)
print("Data type of the sum:",type(num_sum))
जेव्हा आपण वरील प्रोग्राम चालवितो, आउटपुट असे होईलः
Data type of num_int: <class 'int'> Data type of num_str before Type Casting: <class 'str'> Data type of num_str after Type Casting: <class 'int'> Sum of num_int and num_str: 579 Data type of the sum: <class 'int'>
वरील कार्यक्रमात,
आम्ही num_str आणि num_int व्हेरिएबल जोडू.
आम्ही जोडण्यासाठी नंब_स्ट्रिंगला स्ट्रिंग (उच्च) वरुन इंटिजर (लोअर) प्रकारात रूपांतरित केले.
Num_str ला पूर्णांक व्हॅल्यूमध्ये रुपांतरित केल्या नंतर पायथन हे दोन व्हेरिएबल्स जोडण्यास सक्षम आहे.
पूर्णांक होण्यासाठी आम्हाला क्रमांकांकन मूल्य आणि डेटा प्रकार मिळाला.
Key Points to Remember
1)टाइप रूपांतरण म्हणजे एका डेटा प्रकारामधून दुसर्या डेटा प्रकारात ऑब्जेक्टचे रूपांतरण.
2)पायथन इंटरप्रीटरद्वारे स्वयंचलितरित्या इम्प्रिपेड प्रकार रूपांतरण केले जाते.
3)पायथन इंप्लिक्ट टाइप रूपांतरणातील डेटा गमावण्यापासून टाळतो.
4)सुस्पष्ट प्रकार रूपांतरण देखील टाइप कास्टिंग असे म्हटले जाते, वापरकर्त्याचे पूर्वनिर्धारित कार्ये 5)वापरून ऑब्जेक्टचे डेटा प्रकार रूपांतरित केले जातात.
6)टाइप कास्टिंगमध्ये, डेटाची हानी होऊ शकते कारण आम्ही ऑब्जेक्टला विशिष्ट डेटा प्रकारावर 7)अंमलबजावणी करतो.
0 टिप्पण्या