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

पायथन में सामान्य स्ट्रिंग ऑपरेशन्स

string मॉड्यूल उपयोगी कांस्टेंट्स, क्लासेस, और हेल्पर फंक्शन capwords() प्रदान करता है।

महत्वपूर्ण कांस्टेंट्स

कांस्टेंटविवरणउदाहरण
ascii_lettersलोअरकेस + अपरकेसabcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
ascii_lowercaseलोअरकेस अक्षरabcdefghijklmnopqrstuvwxyz
ascii_uppercaseअपरकेस अक्षरABCDEFGHIJKLMNOPQRSTUVWXYZ
digitsअंक0123456789
hexdigitsहेक्साडेसिमल अंक0123456789abcdefABCDEF
octdigitsऑक्टल अंक01234567
punctuationविराम चिह्न!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~
whitespaceव्हाइटस्पेस कैरेक्टर्सस्पेस, टैब, न्यूलाइन, आदि
printableप्रिंट करने योग्य सभीdigits + letters + punctuation + whitespace

उपयोग उदाहरण

import string

print(string.ascii_letters)
print(string.digits)
print(string.punctuation)
print(string.whitespace)

capwords() फंक्शन

प्रत्येक शब्द को कैपिटलाइज़ करता है:

  1. स्ट्रिंग को शब्दों में विभाजित करता है (str.split())
  2. प्रत्येक शब्द को कैपिटलाइज़ करता है (str.capitalize())
  3. शब्दों को जोड़ता है (str.join())
import string

text = 'all animals are equal. some are more equal'
result = string.capwords(text)
print(result)  # All Animals Are Equal. Some Are More Equal

Formatter क्लास

कस्टम स्ट्रिंग फॉर्मेटिंग के लिए string.Formatter को सबक्लास करें।

from string import Formatter

f = Formatter()
result = f.format('नाम: {name}, उम्र: {age}, अंक: {marks}', name='राहुल', age=30, marks=50)
print(result)  # नाम: राहुल, उम्र: 30, अंक: 50

# कस्टम फॉर्मेटर
class CustomFormatter(Formatter):
    def format_field(self, value, format_spec):
        if format_spec == 'upper':
            return str(value).upper()
        return super().format_field(value, format_spec)

cf = CustomFormatter()
print(cf.format('{name:upper}', name='hello'))  # HELLO

Template क्लास

सरल स्ट्रिंग सब्स्टीट्यूशन के लिए (उपयोगकर्ता इनपुट के लिए सुरक्षित):

from string import Template

template = Template('मेरा नाम $name है। मैं $age साल का हूँ।')
result = template.substitute(name='राहुल', age=30)
print(result)  # मेरा नाम राहुल है। मैं 30 साल का हूँ।

# safe_substitute - मिसिंग की पर एरर नहीं
result = template.safe_substitute(name='राहुल')
print(result)  # मेरा नाम राहुल है। मैं $age साल का हूँ।

Template सिंटैक्स

  • $var या ${var} - वेरिएबल सब्स्टीट्यूशन
  • $$ - लिटरल $ चिह्न

स्ट्रिंग मेथड्स (बिल्ट-इन str क्लास)

string मॉड्यूल के अलावा, str ऑब्जेक्ट्स के कई उपयोगी मेथड्स हैं:

text = "  Hello, World!  "

print(text.strip())           # "Hello, World!" - व्हाइटस्पेस हटाएं
print(text.lower())           # "  hello, world!  "
print(text.upper())           # "  HELLO, WORLD!  "
print(text.title())           # "  Hello, World!  "
print(text.replace("World", "Python"))  # "  Hello, Python!  "
print(text.split(","))        # ["  Hello", " World!  "]
print(text.startswith("He"))  # True
print(text.endswith("!"))     # True
print(text.find("World"))     # 7 (इंडेक्स)
print("Python".center(20, "-")) # "-------Python-------"
print("42".zfill(5))          # "00042"

फॉर्मेटिंग के आधुनिक तरीके

name = "राहुल"
age = 30

# f-strings (पायथन 3.6+) - अनुशंसित
print(f"नाम: {name}, उम्र: {age}")

# str.format()
print("नाम: {}, उम्र: {}".format(name, age))
print("नाम: {n}, उम्र: {a}".format(n=name, a=age))

# % फॉर्मेटिंग (पुराना)
print("नाम: %s, उम्र: %d" % (name, age))

उपयोगी रेसिपी

import string
import random

# रैंडम पासवर्ड जनरेटर
def generate_password(length=12):
    chars = string.ascii_letters + string.digits + string.punctuation
    return ''.join(random.choice(chars) for _ in range(length))

# स्लग जनरेटर (URL-फ्रेंडली)
def slugify(text):
    text = text.lower()
    for char in string.punctuation + string.whitespace:
        text = text.replace(char, '-')
    # मल्टीपल हाइफन्स को सिंगल में बदलें
    while '--' in text:
        text = text.replace('--', '-')
    return text.strip('-')

print(generate_password())
print(slugify("Hello, World! This is Python."))
  1. - पायथन में स्ट्रिंग ऑपरेशन्स

    पायथन में एक मानक लाइब्रेरी होती है जिसे string कहा जाता है। इस मॉड्यूल में विभिन्न स्ट्रिंग-संबंधी कॉन्स्टेंट्स, मेथड्स और क्लासेस उपलब्ध होते हैं।इनका उपयोग करने के लिए, हमें अपने कोड में string मॉड्यूल को इम्पोर्ट करना पड़ता है।import stringकुछ स्ट्रिंग कॉन्स्टेंट्स और उनके मान निम्नलिखित हैं:क्र

  1. - पायथन बूलियन ऑपरेशन्स

    बेसिक बूलियन ऑपरेशन्स हैं and, or, not ऑपरेशन्स।and ऑपरेशन - and ऑपरेशन का बेसिक सिंटैक्स है: x and y। यह इंगित करता है कि जब x असत्य हो, तो x लौटाएं, अन्यथा y लौटाएं।or ऑपरेशन - or ऑपरेशन का बेसिक सिंटैक्स है: x or y। यह इंगित करता है कि जब x असत्य हो, तो y लौटाएं, अन्यथा x लौटाएं।not ऑपरेशन - not

  1. - Python स्ट्रिंग्स में महारत हासिल करें: आवश्यक ऑपरेशन्स और सर्वोत्तम प्रथाएं

    स्ट्रिंग्स Python में बुनियादी डेटा प्रकारों में से एक हैं। Python स्ट्रिंग्स अक्षरों, अंकों और अन्य विशेष वर्णों से बने किसी भी संख्या में वर्णों का संयोजन हैं। इस ट्यूटोरियल में, आप सीखेंगे कि विभिन्न परिदृश्यों में उपयोग के लिए उन्हें कैसे बनाएं, हेरफेर करें और फॉर्मेट करें। Python में नई स्ट्रि