पायथन 3 में %
ऑपरेटर को छोड़कर ठीक है कि वाक्यविन्यास अब format
विधि है। पाइथन 3 में संक्रमण को सुगम बनाने के लिए str.format
को पायथन 2.6+ में भी जोड़ा गया है। अधिक जानकारी के लिए format string syntax देखें।
>>> '{0} {1} {1}' % ('foo', 'bar')
'foo bar bar'
हालांकि यह पाइथन के पुराने संस्करणों में एक टुपल के साथ नहीं किया जा सकता है। आप कोष्ठक में संलग्न मैपिंग कुंजियों का उपयोग करके बंद हो सकते हैं। मैपिंग कुंजियों के साथ प्रारूप मानों को एक टुपल के बजाय एक dict के रूप में पारित किया जाना चाहिए।
>>> '%(0)s %(1)s %(1)s' % {'0': 'foo', '1': 'bar'}
'foo bar bar'
से
Python manual:
जब सही तर्क एक शब्दकोश (या मैपिंग प्रकार), तो स्ट्रिंग में प्रारूपों कि शब्दकोश के तुरंत बाद डाला में एक parenthesised मानचित्रण कुंजी शामिल करना चाहिए है '%' चरित्र। मैपिंग कुंजी मैपिंग से स्वरूपित होने वाले मान का चयन करती है।
स्रोत
2011-01-17 01:39:58
दिलचस्प। यह 'str ".format (args)' लेकिन "str"% args' के साथ क्यों काम करता है? –
@Rosarch: क्योंकि '{n}' वाक्यविन्यास केवल 'str.format() 'के लिए काम करता है, न कि' str .__ mod __() '। –
@Rosarch: मुझे लगता है कि आपने पुराने तरीके से नए तरीके को मिश्रित किया है क्योंकि पुराना तरीका '{} 'को प्लेसहोल्डर के रूप में उपयोग नहीं करता है :), लेकिन' .format() 'का उपयोग करना नया तरीका है स्ट्रिंग बनाने के लिए पेप 3101 पर अधिक जानकारी के लिए एक नज़र डालें: http://www.python.org/dev/peps/pep-3101/ – mouad