Template Strings और str.format
अन्य फ़ॉर्मैटिंग उपकरण
Template Strings और str.format, CoddyKit पर Python Academy का एक निःशुल्क पाठ है। यह 4 में से 4वाँ पाठ है। आप नीचे पूरा पाठ निःशुल्क पढ़ सकते हैं—फिर अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर के साथ ब्राउज़र में इसका व्यावहारिक अभ्यास कर सकते हैं। यह Python Academy सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। Python Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
अन्य स्वरूपण उपकरण
f-स्ट्रिंग के अलावा, पाइथन दो और स्वरूपण उपकरण देता है: str.format() विधि और string.Template वर्ग। हर उपकरण अलग-अलग परिस्थितियों के लिए उपयुक्त है।
print('Hello, {}!'.format('World'))str.format की मूल बातें
str.format() घुंघराले कोष्ठकों वाले स्थानधारकों को क्रम के अनुसार दिए गए तर्कों से बदलता है। यह f-स्ट्रिंग से पहले आया था और अब भी बहुत-से कोड में दिखाई देता है।
msg = '{} is {} years old'.format('Ada', 36)
print(msg)स्थितिगत अनुक्रमांक
तर्कों को उनकी स्थिति के आधार पर दोबारा उपयोग करने या उनका क्रम बदलने के लिए घुंघराले कोष्ठकों में संख्याएँ रखें।
print('{0} {1} {0}'.format('echo', 'once'))नामित स्थानधारक
घुंघराले कोष्ठकों के भीतर नामों का उपयोग करें और कीवर्ड तर्क दें। इससे टेम्पलेट अपने उपयोग का स्पष्ट विवरण देने लगते हैं।
print('{name} scored {score}'.format(name='Lin', score=95))Format विनिर्देशक अब भी लागू होते हैं
वही लघु-भाषा str.format में कोलन के बाद भी काम करती है, इसलिए आप चौड़ाई, परिशुद्धता और संरेखण नियंत्रित कर सकते हैं।
print('{:.2f}'.format(3.14159))
print('{:>8}'.format('hi'))शब्दकोश से स्वरूपण
नामित स्थानधारकों को भरने के लिए ** की सहायता से शब्दकोश को str.format में अनपैक करें।
data = {'city': 'Rome', 'temp': 27}
print('{city}: {temp} C'.format(**data))Template स्ट्रिंग का परिचय
string.Template में $ पर आधारित स्थानधारक होते हैं। इसे जानबूझकर सरल और उपयोगकर्ता द्वारा दिए गए टेम्पलेट के लिए अधिक सुरक्षित बनाया गया है, क्योंकि यह मनमानी अभिव्यक्तियाँ नहीं चला सकता।
from string import Template
t = Template('Hello, $name!')
print(t.substitute(name='World'))स्पष्टता के लिए घुंघराले कोष्ठक
जब स्थानधारक नाम के पास अन्य पाठ हो, तब उसे ${name} की तरह घुंघराले कोष्ठकों में रखें।
from string import Template
t = Template('${item}s cost $$5')
print(t.substitute(item='apple'))safe_substitute
गायब नामों के लिए substitute KeyError उत्पन्न करता है। इसके बजाय safe_substitute अज्ञात स्थानधारकों को बिना बदले छोड़ देता है।
from string import Template
t = Template('$greeting, $name')
print(t.safe_substitute(greeting='Hi'))कब किसका उपयोग करें
दिशानिर्देश: रोज़मर्रा के कोड के लिए f-स्ट्रिंग को प्राथमिकता दें। जब टेम्पलेट डेटा से अलग हो, तब str.format का उपयोग करें। अविश्वसनीय और उपयोगकर्ता द्वारा दिए गए टेम्पलेट के लिए Template का उपयोग करें।
name = 'Sam'
print(f'f-string: {name}')
print('format: {}'.format(name))बाहरी पाठ से टेम्पलेट
चूँकि टेम्पलेट का पाठ केवल एक स्ट्रिंग है, आप इसे कॉन्फ़िगरेशन फ़ाइल या डेटाबेस से लोड कर सकते हैं और फिर रनटाइम पर मानों को प्रतिस्थापित कर सकते हैं।
from string import Template
stored = 'Order $id ships to $city'
t = Template(stored)
print(t.substitute(id=7, city='Oslo'))त्वरित जाँच
किसी अविश्वसनीय उपयोगकर्ता द्वारा दिए गए टेम्पलेट में मानों को प्रतिस्थापित करने के लिए कौन-सा उपकरण सबसे सुरक्षित है?
पुनरावलोकन: टेम्पलेट स्ट्रिंग और str.format
एफ़-स्ट्रिंग के विकल्पों का सारांश:
str.format()में{}स्थानधारक होते हैं और यह क्रमिक, नामित तथा पूर्ण फ़ॉर्मैट विनिर्देश का समर्थन करता है।string.Templateमें$nameस्थानधारक होते हैं और यह अविश्वसनीय इनपुट के लिए सुरक्षित है।safe_substituteअज्ञात स्थानधारकों को उसी स्थान पर छोड़ देता है।- सामान्य कोड के लिए एफ़-स्ट्रिंग को प्राथमिकता दें; टेम्पलेट बाहरी या अविश्वसनीय होने पर इन उपकरणों का उपयोग करें।
from string import Template
print(Template('Bye, $who').substitute(who='all'))
print('Done: {}'.format(True))एआई शिक्षक के साथ Python सीखें — निःशुल्क
अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।
- पाठ्यक्रम
- 76
- पाठ
- 320
अक्सर पूछे जाने वाले प्रश्न
क्या “Template Strings और str.format” पाठ निःशुल्क है?
हाँ—“Template Strings और str.format” का पूरा पाठ यहाँ वेब पर निःशुल्क पढ़ा जा सकता है। इंटरैक्टिव अभ्यास (अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर) करने और Python Academy पाठ्यक्रम का बाकी हिस्सा अनलॉक करने के लिए CoddyKit PRO लें। Python Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
“Template Strings और str.format” में मैं क्या सीखूँगा?
अन्य फ़ॉर्मैटिंग उपकरण आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ Python Academy का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।
क्या Python Academy शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?
पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर Python Academy शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 4वाँ पाठ है।
“Template Strings और str.format” पाठ पूरा करने में कितना समय लगता है?
CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।
क्या मैं इस Python Academy पाठ में कोड लिख और चला सकता हूँ?
हाँ। हर Python Academy पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।
इस पाठ्यक्रम के सभी पाठ
- f-string अभिव्यक्तियाँ
- फ़ॉर्मैट विनिर्देशक
- फ़ॉर्मैट की छोटी भाषा
- Template Strings और str.format