स्ट्रिंग

किसी समस्या की शिकायत करें सोर्स देखें Nightly · 7.4 .

स्ट्रिंग का इस्तेमाल करने के लिए, पहले से मौजूद भाषा. स्ट्रिंग लिटरल के उदाहरण:

a = 'abc\ndef'
b = "ab'cd"
c = """multiline string"""

# Strings support slicing (negative index starts from the end):
x = "hello"[2:4]  # "ll"
y = "hello"[1:-1]  # "ell"
z = "hello"[:4]  # "hell"
# Slice steps can be used, too:
s = "hello"[::2] # "hlo"
t = "hello"[3:0:-1] # "lle"
स्ट्रिंग को सीधे तौर पर नहीं दोहराया जा सकता. उनके वर्णों को दोहराने के लिए, .elems() तरीके का इस्तेमाल करें. उदाहरण:
"bc" in "abcd"   # evaluates to True
x = [c for c in "abc".elems()]  # x == ["a", "b", "c"]
स्ट्रिंग को सीधे तौर पर जोड़ने की अनुमति नहीं है. इसके बजाय, + ऑपरेटर का इस्तेमाल करें. तुलना करने वाले ऑपरेटर, शब्दों की मदद से तुलना करते हैं. समानता की जांच करने के लिए, == का इस्तेमाल करें.

सदस्य

अक्षर बड़े करें

string string.capitalize()

स्ट्रिंग की एक कॉपी दिखाता है, जिसमें पहले वर्ण (अगर कोई है) को अपरकेस में और बाकी वर्णों को लोअरकेस में दिखाया जाता है. इस तरीके में, ASCII के अलावा दूसरे वर्ण काम नहीं करते.

सोलर पैनलों की संख्या

int string.count(sub, start=0, end=None)

स्ट्रिंग में सबस्ट्रिंग sub के ओवरलैप न होने वाली जगहों की संख्या दिखाता है. इसके लिए, [start:end], start, और end का इस्तेमाल किया जा सकता है. [start:end] में ओवरलैप वाली जगहें शामिल होती हैं, जबकि start और end में नहीं.

पैरामीटर

पैरामीटर ब्यौरा
sub string; ज़रूरी
गिनती करने के लिए सबस्ट्रिंग.
start int; या None; डिफ़ॉल्ट 0 है
इस पोज़िशन से खोजने पर सीमित करें.
end int या None; डिफ़ॉल्ट तौर पर None
खोज के लिए पाबंदी लगाने से पहले की वैकल्पिक स्थिति.

elems

sequence string.elems()

यह एक ऐसी वैल्यू दिखाता है जिसे बार-बार इस्तेमाल किया जा सकता है. इसमें स्ट्रिंग की एक-एलिमेंट वाली सबस्ट्रिंग होती है. यह [s[i] for i in range(len(s))] के बराबर है. हालांकि, हो सकता है कि लौटाई गई वैल्यू सूची न हो.

endswith

bool string.endswith(sub, start=0, end=None)

अगर स्ट्रिंग के आखिर में sub है, तो True दिखाता है. अगर sub नहीं है, तो False दिखाता है. इसके अलावा, [start:end], start, और end में से किसी एक पर भी पाबंदी लगाई जा सकती है. start में शामिल होने वाले और end में शामिल न होने वाले वैल्यू को दिखाया जाता है.

पैरामीटर

पैरामीटर ब्यौरा
sub स्ट्रिंग या स्ट्रिंग का ट्यूपल; ज़रूरी है
मैच करने के लिए सफ़िक्स (या अन्य सफ़िक्स का ट्यूपल).
start int या None; डिफ़ॉल्ट 0
है इस पोज़िशन से टेस्ट शुरू करें.
end int या None; डिफ़ॉल्ट तौर पर None
तुलना बंद करने की वैकल्पिक स्थिति.

ढूंढें

int string.find(sub, start=0, end=None)

वह इंडेक्स दिखाता है जहां sub मिलता है. अगर ऐसा कोई इंडेक्स नहीं है, तो -1 दिखाता है. इसके अलावा, [start:end], start, और end में से किसी एक पर भी पाबंदी लगाई जा सकती है. start में शामिल और end में शामिल नहीं होने वाले वैल्यू को शामिल किया जाता है.

पैरामीटर

पैरामीटर ब्यौरा
sub string; ज़रूरी
ढूंढने के लिए सबस्ट्रिंग.
start int; या None; डिफ़ॉल्ट 0 है
इस पोज़िशन से खोजने पर सीमित करें.
end int या None; डिफ़ॉल्ट तौर पर None
खोज के लिए पाबंदी लगाने से पहले की वैकल्पिक स्थिति.

फ़ॉर्मैट

string string.format(*args, **kwargs)

स्ट्रिंग इंटरपोलेशन करें. फ़ॉर्मैट स्ट्रिंग में, कर्ली ब्रैकेट {} से घिरे रिप्लेसमेंट फ़ील्ड होते हैं. ब्रैकेट में न आने वाले टेक्स्ट को लिटरल टेक्स्ट माना जाता है. इसे आउटपुट में बिना किसी बदलाव के कॉपी किया जाता है. अगर आपको लिटरल टेक्स्ट में ब्रैकेट वर्ण शामिल करना है, तो उसे दो बार डालकर एस्केप किया जा सकता है: {{ और }}बदले जाने वाले फ़ील्ड में नाम, संख्या या खाली फ़ील्ड हो सकता है. str फ़ंक्शन का इस्तेमाल करके, वैल्यू को स्ट्रिंग में बदला जाता है.
# Access in order:
"{} < {}".format(4, 5) == "4 < 5"
# Access by position:
"{1}, {0}".format(2, 1) == "1, 2"
# Access by name:
"x{key}x".format(key = 2) == "x2x"

पैरामीटर

पैरामीटर ब्यौरा
args डिफ़ॉल्ट रूप से ()
आर्ग्युमेंट की सूची.
kwargs डिफ़ॉल्ट रूप से {}
आर्ग्युमेंट की डिक्शनरी.

इंडेक्स

int string.index(sub, start=0, end=None)

वह पहला इंडेक्स दिखाता है जहां sub मिलता है. अगर ऐसा कोई इंडेक्स मौजूद नहीं है, तो गड़बड़ी का मैसेज दिखाता है. इसके अलावा, [start:end]start को शामिल करने और end को शामिल न करने की पाबंदी भी लगाई जा सकती है.

पैरामीटर

पैरामीटर ब्यौरा
sub string; ज़रूरी है
वह सबस्ट्रिंग जिसे ढूंढना है.
start int या None; डिफ़ॉल्ट तौर पर 0
होता है इस पोज़िशन से खोजने पर पाबंदी लगाएं.
end int या None; डिफ़ॉल्ट तौर पर None
खोज के लिए पाबंदी लगाने से पहले की वैकल्पिक स्थिति.

isalnum

bool string.isalnum()

अगर स्ट्रिंग में सभी वर्ण अक्षर और अंक ([a-zA-Z0-9]) हैं और कम से कम एक वर्ण है, तो True दिखाता है.

isऐल्फ़ा

bool string.isalpha()

अगर स्ट्रिंग में सभी वर्ण अंग्रेज़ी के वर्ण ([a-zA-Z]) हैं और कम से कम एक वर्ण है, तो True दिखाता है.

इज़डिजिट

bool string.isdigit()

अगर स्ट्रिंग में सभी वर्ण अंक ([0-9]) हैं और कम से कम एक वर्ण है, तो True दिखाता है.

islower

bool string.islower()

अगर स्ट्रिंग में सभी केस वाले वर्ण लोअरकेस में हैं और कम से कम एक वर्ण है, तो True दिखाता है.

isspace

bool string.isspace()

अगर सभी वर्ण व्हाइट स्पेस वर्ण हैं और स्ट्रिंग में कम से कम एक वर्ण है, तो True वैल्यू मिलती है.

istitle

bool string.istitle()

सही है अगर स्ट्रिंग, टाइटल केस में है और उसमें कम से कम एक वर्ण है. इसका मतलब है कि अंग्रेज़ी के हर बड़े वर्ण के बाद कोई अंग्रेज़ी का अक्षर (जैसे, खाली सफ़ेद जगह) होना चाहिए. साथ ही, अंग्रेज़ी के हर छोटे अक्षर के बाद, अंग्रेज़ी के बड़े या छोटे अक्षर के पहले अक्षरों का इस्तेमाल होना चाहिए.

isupper

bool string.isupper()

अगर स्ट्रिंग में सभी केस वाले वर्ण अपरकेस हैं और कम से कम एक वर्ण है, तो True दिखाता है.

जोड़ना

string string.join(elements)

वह स्ट्रिंग दिखाता है जिसमें तर्क के स्ट्रिंग एलिमेंट को इस स्ट्रिंग से सेपरेटर के तौर पर जोड़ा जाता है. उदाहरण:
"|".join(["a", "b", "c"]) == "a|b|c"

पैरामीटर

पैरामीटर ब्यौरा
elements ज़रूरी
वे ऑब्जेक्ट जिन्हें शामिल करना है.

निचला

string string.lower()

इस स्ट्रिंग को लोअरकेस में बदलकर दिखाता है.

lstrip

string string.lstrip(chars=None)

chars में दिखने वाले शुरुआती वर्णों को हटाकर, स्ट्रिंग की कॉपी दिखाता है. ध्यान दें कि chars कोई प्रीफ़िक्स नहीं है: इसकी वैल्यू के सभी कॉम्बिनेशन हटा दिए जाते हैं:
"abcba".lstrip("ba") == "cba"

पैरामीटर

पैरामीटर ब्यौरा
chars string; या None; None
हटाए जाने वाले वर्ण या अगर कोई खाली सफ़ेद जगह नहीं है, तो वह डिफ़ॉल्ट रूप से सेट होती है.

पार्टीशन

tuple string.partition(sep)

इनपुट स्ट्रिंग को सेपरेटर sep की पहली एंट्री पर बांटा जाता है. साथ ही, नतीजे के तौर पर मिलने वाले सेगमेंट को, फ़ॉर्म के तीन एलिमेंट वाले ट्यूपल (पहले, सेपरेटर, बाद में) के तौर पर दिखाता है. अगर इनपुट स्ट्रिंग में सेपरेटर नहीं है, तो partition फ़ंक्शन (self, '', '') दिखाता है.

पैरामीटर

पैरामीटर ब्यौरा
sep string; ज़रूरी है
वह स्ट्रिंग जिसे बांटना है.

removeprefix

string string.removeprefix(prefix)

अगर स्ट्रिंग prefix से शुरू होती है, तो प्रीफ़िक्स हटाकर एक नई स्ट्रिंग दिखाता है. ऐसा न होने पर, स्ट्रिंग दिखाता है.

पैरामीटर

पैरामीटर ब्यौरा
prefix स्ट्रिंग; ज़रूरी है
अगर प्रीफ़िक्स मौजूद है, तो उसे हटाएं.

removesuffix

string string.removesuffix(suffix)

अगर स्ट्रिंग suffix पर खत्म होती है, तो सफ़िक्स हटाकर एक नई स्ट्रिंग दिखाती है. ऐसा न होने पर, स्ट्रिंग दिखाता है.

पैरामीटर

पैरामीटर ब्यौरा
suffix string; ज़रूरी है
अगर कोई सफ़िक्स मौजूद है, तो उसे हटाएं.

बदलें

string string.replace(old, new, count=-1)

old की जगह new लगाकर, स्ट्रिंग की एक कॉपी दिखाता है. इसके अलावा, count तक बदलाव करने की संख्या को सीमित किया जा सकता है.

पैरामीटर

पैरामीटर ब्यौरा
old string; ज़रूरी है
वह स्ट्रिंग जिसे बदलना है.
new string; ज़रूरी है
वह स्ट्रिंग जिसे बदलना है.
count int; डिफ़ॉल्ट रूप से यह संख्या -1 है
ज़्यादा से ज़्यादा कितने डिवाइसों को बदला जा सकता है. अगर वैल्यू को छोड़ा जाता है या नेगेटिव वैल्यू होती है, तो कोई सीमा नहीं होती.

rfind

int string.rfind(sub, start=0, end=None)

वह आखिरी इंडेक्स दिखाता है जहां sub मिलता है. अगर ऐसा कोई इंडेक्स मौजूद नहीं है, तो -1 दिखाता है. इसके अलावा, [start:end], start, और end के लिए भी इंडेक्स दिखाया जा सकता है.

पैरामीटर

पैरामीटर ब्यौरा
sub string; ज़रूरी है
वह सबस्ट्रिंग जिसे ढूंढना है.
start int; या None; डिफ़ॉल्ट 0 है
इस पोज़िशन से खोजने पर सीमित करें.
end int या None; डिफ़ॉल्ट तौर पर None
खोज के लिए पाबंदी लगाने से पहले की वैकल्पिक स्थिति.

रेनइंडेक्स

int string.rindex(sub, start=0, end=None)

वह आखिरी इंडेक्स लौटाता है जहां sub मिलता है या अगर कोई इंडेक्स मौजूद नहीं है, तो गड़बड़ी को दिखाता है. वैकल्पिक तौर पर, इसे [start:end] तक सीमित करता है, start को शामिल करता है और end को खास बनाता है.

पैरामीटर

पैरामीटर ब्यौरा
sub string; ज़रूरी है
वह सबस्ट्रिंग जिसे ढूंढना है.
start int या None; डिफ़ॉल्ट तौर पर 0
होता है इस पोज़िशन से खोजने पर पाबंदी लगाएं.
end int या None; डिफ़ॉल्ट तौर पर None
खोज के लिए पाबंदी लगाने से पहले की वैकल्पिक स्थिति.

rपार्टिशन

tuple string.rpartition(sep)

यह फ़ंक्शन, इनपुट स्ट्रिंग को सेपरेटर sep के आखिरी बार दिखने पर बांट देता है. साथ ही, इस फ़ंक्शन से मिलने वाले हिस्से को (before, separator, after) फ़ॉर्मैट में तीन एलिमेंट वाले टपल के तौर पर दिखाता है. अगर इनपुट स्ट्रिंग में सेपरेटर नहीं है, तो rpartition फ़ंक्शन ('', '', self) दिखाता है.

पैरामीटर

पैरामीटर ब्यौरा
sep string; ज़रूरी है
वह स्ट्रिंग जिसे बांटना है.

rsplit

list string.rsplit(sep, maxsplit=None)

sep को सेपरेटर के तौर पर इस्तेमाल करके, स्ट्रिंग में मौजूद सभी शब्दों की सूची दिखाता है. इसके अलावा, आपके पास स्ट्रिंग को maxsplit तक के हिस्सों में बांटने का विकल्प भी होता है. दाईं ओर से बांटने के अलावा, यह तरीका split() की तरह काम करता है.

पैरामीटर

पैरामीटर ब्यौरा
sep string; ज़रूरी है
वह स्ट्रिंग जिसे बांटना है.
maxsplit int या None; डिफ़ॉल्ट तौर पर None
स्प्लिट की ज़्यादा से ज़्यादा संख्या.

rstrip

string string.rstrip(chars=None)

उस स्ट्रिंग की कॉपी देता है जिसमें chars में दिखने वाले बाद के वर्ण हटा दिए जाते हैं. ध्यान दें कि chars कोई सफ़िक्स नहीं है: इसकी वैल्यू के सभी कॉम्बिनेशन हटा दिए जाते हैं:
"abcbaa".rstrip("ab") == "abc"

पैरामीटर

पैरामीटर ब्यौरा
chars string या None; डिफ़ॉल्ट तौर पर None
होता है हटाने के लिए वर्ण या None होने पर सभी खाली जगहें.

बांटें

list string.split(sep, maxsplit=None)

यह फ़ंक्शन sep को सेपरेटर के तौर पर इस्तेमाल करके, स्ट्रिंग में मौजूद सभी शब्दों की सूची दिखाता है. हालांकि, यह फ़ंक्शन, स्प्लिट की संख्या को maxsplit तक सीमित करता है.

पैरामीटर

पैरामीटर ब्यौरा
sep string; ज़रूरी है
वह स्ट्रिंग जिसे बांटना है.
maxsplit int या None; डिफ़ॉल्ट तौर पर None
स्प्लिट की ज़्यादा से ज़्यादा संख्या.

स्प्लिटलाइन

sequence string.splitlines(keepends=False)

स्ट्रिंग को लाइन की सीमाओं ('\n', '\r\n', '\r') पर विभाजित करता है और नई बदली जा सकने वाली सूची के रूप में नतीजा देता है.

पैरामीटर

पैरामीटर ब्यौरा
keepends bool; डिफ़ॉल्ट वैल्यू False है
नतीजे की सूची में लाइन ब्रेक को शामिल किया जाना चाहिए या नहीं.

startswith

bool string.startswith(sub, start=0, end=None)

अगर स्ट्रिंग sub से शुरू होती है, तो True दिखाता है. ऐसा न होने पर False दिखाता है. इसके अलावा, [start:end], start, और end पर भी पाबंदी लगाई जा सकती है. start में शामिल और end में शामिल नहीं होने वाले वैल्यू को दिखाया जाता है.

पैरामीटर

पैरामीटर ब्यौरा
sub string; या string का टपल; ज़रूरी है
मेल खाने के लिए यह प्रीफ़िक्स (या वैकल्पिक प्रीफ़िक्स का टपल) है.
start int या None; डिफ़ॉल्ट 0
है इस पोज़िशन से टेस्ट शुरू करें.
end int या None; डिफ़ॉल्ट None
है इस पोज़िशन पर तुलना बंद करें.

स्ट्रिप

string string.strip(chars=None)

chars में मौजूद शुरुआती या आखिरी वर्णों को हटाकर, स्ट्रिंग की कॉपी दिखाता है. ध्यान दें कि chars न तो प्रीफ़िक्स है और न ही सफ़िक्स: इसकी वैल्यू के सभी कॉम्बिनेशन हटा दिए जाते हैं:
"aabcbcbaa".strip("ab") == "cbc"

पैरामीटर

पैरामीटर ब्यौरा
chars string या None; डिफ़ॉल्ट तौर पर None
होता है हटाने के लिए वर्ण या None होने पर सभी खाली जगहें.

title

string string.title()

इनपुट स्ट्रिंग को टाइटल केस में बदलता है. इसका मतलब है कि सभी शब्द, अपरकेस अक्षर से शुरू होते हैं और बाकी के अक्षर अंग्रेज़ी के छोटे अक्षरों में होते हैं. इस संदर्भ में, शब्द का मतलब सिर्फ़ अक्षरों के क्रम से है. इस तरीके में, यूनिकोड के अतिरिक्त वर्णों का इस्तेमाल नहीं किया जा सकता.

ऊपर का

string string.upper()

इस स्ट्रिंग का अपरकेस वर्शन दिखाता है.