एफ-स्ट्रिंग्स पायथन 3.6 से उपलब्ध हैं और स्ट्रिंग्स को प्रारूपित करने के लिए बहुत उपयोगी हैं:
>>> n='you'
>>> f'hello {n}, how are you?'
'hello you, how are you?'
पायथन 3 के एफ-स्ट्रिंग्स में उनके बारे में अधिक पढ़ना : एक बेहतर स्ट्रिंग स्वरूपण सिंटैक्स (गाइड) । मुझे एक दिलचस्प पैटर्न मिला:
ध्यान दें कि ट्रिपल ब्रेसिज़ का उपयोग करने के परिणामस्वरूप आपकी स्ट्रिंग में केवल एकल ब्रेसिज़ होंगे:
>>> f"{{{74}}}" '{74}'
हालाँकि, यदि आप ट्रिपल ब्रेसेस से अधिक का उपयोग करते हैं, तो आप अधिक ब्रेसिज़ प्राप्त कर सकते हैं:
>>> f"{{{{74}}}}" '{{74}}'
और यह वास्तव में मामला है:
>>> f'{74}'
'74'
>>> f'{{74}}'
'{74}'
अब अगर हम दो {
से तीन से गुजरते हैं , तो परिणाम समान होता है:
>>> f'{{{74}}}'
'{74}' # same as f'{{74}}' !
तो हमें 4 तक की आवश्यकता है! ( {{{{
) आउटपुट के रूप में दो ब्रेसिज़ प्राप्त करने के लिए:
>>> f'{{{{74}}}}'
'{{74}}'
ऐसा क्यों है? दो ब्रेसिज़ के साथ क्या होता है पायथन को उस क्षण से एक अतिरिक्त की आवश्यकता होती है?
f'{2+2}'
4 कैसे लौटता है, f'{{2+2}}'
2 + 2, f'{{{2+2}}}'
} {4}, f'{{{{2+2}}}}'
2 {{2 + 2}} और इतने पर रिटर्न देता है । यह समझ में आता है, लेकिन पहली नजर में पहेली थोड़ा सा।
f'{74}'
यह उसी के समान है f'74'
।
str.format
यह भी करता है।
"{74}".format(...)
कम से कम 74 तत्वों के साथ एक अनुक्रम की आवश्यकता होगी।
f"{{2+2}}"
औरf"{{{2+2}}}"
, जो कर रहे हैं'{2+2}'
और'{4}'
क्रमश: