Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Python

Python 3 में Dictionary का उपयोग करके String Format कैसे करें?


Dictionary के साथ String Formatting

आप Strings को Interpolate करने के लिए Dictionaries का उपयोग कर सकते हैं। इनका एक Syntax होता है जिसमें आपको % और Conversion Character के बीच Parentheses में Key Provide करना होता है।

उदाहरण

उदाहरण के लिए, यदि आपके पास Key 'cost' में Float Stored है और आप इसे '$xxxx.xx' के रूप में Format करना चाहते हैं, तो आप उस स्थान पर '$%(cost).2f' रखेंगे जहां आप इसे Display करना चाहते हैं।

>>> print('%(language)s has %(number)03d quote types.' % {'language': "Python", "number": 2})
Python has 002 quote types.

Complete Example:

data = {
    'name': 'Alice',
    'age': 30,
    'city': 'New York',
    'salary': 75000.50
}

# % Formatting
template = "Name: %(name)s, Age: %(age)d, City: %(city)s, Salary: $%(salary).2f"
print(template % data)
# Name: Alice, Age: 30, City: New York, Salary: $75000.50

Modern Alternatives (अनुशंसित):

1. str.format() with Dictionary Unpacking:

template = "Name: {name}, Age: {age}, City: {city}, Salary: ${salary:.2f}"
print(template.format(**data))

2. f-strings (Python 3.6+) - सबसे Fast और Readable:

name = data['name']
age = data['age']
city = data['city']
salary = data['salary']

print(f"Name: {name}, Age: {age}, City: {city}, Salary: ${salary:.2f}")

3. Template Strings (Safe, User-provided Templates के लिए):

from string import Template

template = Template("Name: $name, Age: $age")
print(template.substitute(data))

Format Specification Mini-Language:

# % Formatting
"%(name)10s"      # 10 chars wide, Right Align
"%(name)-10s"     # 10 chars wide, Left Align
"%(num)05d"       # 5 digits, Zero Padded
"%(price).2f"     # 2 Decimal Places
"%(ratio).2%"     # Percentage with 2 Decimals

  1. - पायथन में स्ट्रिंग से कैरेक्टर कैसे हटाएं?

    यदि आप स्ट्रिंग में किसी निश्चित इंडेक्स पर स्थित कैरेक्टर को हटाना चाहते हैं, तो आप स्ट्रिंग स्लाइसिंग का उपयोग करके उस कैरेक्टर के बिना एक नई स्ट्रिंग बना सकते हैं। उदाहरण के लिए: >>> s = Hello World >>> s[:4] + s[5:] Hell World लेकिन यदि आप किसी कैरेक्टर या कैरेक्टर्स की सूची के

  1. - पायथन में दी गई डिक्शनरी के अनुसार स्ट्रिंग को कैसे ट्रांसलेट करें?

    हम translate() मेथड का उपयोग कर सकते हैं जो स्ट्रिंग की एक कॉपी लौटाता है जिसमें सभी कैरेक्टर्स को टेबल का उपयोग करके ट्रांसलेट किया गया होता है (स्ट्रिंग मॉड्यूल में maketrans() फ़ंक्शन के साथ निर्मित), वैकल्पिक रूप से डिलीटकैर्स में पाए जाने वाले सभी कैरेक्टर्स को हटाते हुए। उदाहरण from string imp

  1. - पायथन में स्ट्रिंग को कैसे रिवर्स करें?

    पायथन में स्ट्रिंग को रिवर्स करने के लिए स्ट्रिंग स्लाइसिंग और रेंज ऑपरेटर्स का उपयोग किया जा सकता है। उदाहरण के लिए: >>> Hello[::-1] olleH >>> Halloween[::-1] neewollaH [] ऑपरेटर कोलन : से अलग 3 नंबर ले सकता है। पहला स्टार्ट इंडेक्स है, दूसरा एंड इंडेक्स है और तीसरा स्ट्राइड है। य