Python len() फ़ंक्शन: स्ट्रिंग की लंबाई कैसे ज्ञात करें

⚡ स्मार्ट सारांश

Python len() एक अंतर्निर्मित फ़ंक्शन है जो किसी ऑब्जेक्ट में मौजूद वस्तुओं की संख्या लौटाता है, जैसे कि स्ट्रिंग में वर्णों की संख्या या सूची, टपल, शब्दकोश या सेट में मौजूद तत्वों की संख्या।

  • 🔢 सिंटेक्स: len(object) एक ही तर्क लेता है और उसमें मौजूद तत्वों की कुल संख्या, यानी एक पूर्णांक लौटाता है।
  • 🔠 स्ट्रिंग्स: किसी स्ट्रिंग के लिए, len() फ़ंक्शन स्पेस, अंक और विराम चिह्नों सहित प्रत्येक वर्ण की गणना करता है।
  • 📦 संग्रह: len() फ़ंक्शन सूचियों, टुपल्स, शब्दकोशों, सेटों और रेंज ऑब्जेक्टों के आकार को एक ही तरीके से मापता है।
  • ⚙️ प्रदर्शन: len() स्थिर O(1) समय में चलता है क्योंकि Python यह प्रत्येक ऑब्जेक्ट की लंबाई को एक विशेषता के रूप में संग्रहीत करता है।
  • 🚫 लेखनत्रुटि: किसी पूर्णांक या None पर len() फ़ंक्शन को कॉल करने पर TypeError उत्पन्न होता है, क्योंकि इन प्रकारों की कोई लंबाई नहीं होती है।
  • 🤖 एआई सहायता: एआई कोडिंग सहायक len() जांच उत्पन्न करते हैं, और मशीन लर्निंग पाइपलाइन अनुक्रमों को पैड करने और बैच करने के लिए len() का उपयोग करती हैं।

Python len() फ़ंक्शन

क्या है Python len() फ़ंक्शन?

RSI लेन () यह फ़ंक्शन एक अंतर्निर्मित फ़ंक्शन है Pythonआप len() फ़ंक्शन का उपयोग करके किसी दी गई स्ट्रिंग, ऐरे, लिस्ट, टपल, डिक्शनरी और अन्य ऑब्जेक्ट की लंबाई प्राप्त कर सकते हैं। चूंकि तत्वों की संख्या ऑब्जेक्ट में संग्रहीत होती है, न कि हर बार पुनर्गणना की जाती है, इसलिए len() आपको आकार की त्वरित जांच करने और अपने प्रोग्राम के प्रदर्शन को अनुकूलित करने में मदद करता है।

वाक्यविन्यास Python len() फ़ंक्शन

RSI Python len() फ़ंक्शन निम्नलिखित सिंटैक्स का उपयोग करता है:

len(value)

पैरामीटर्स

मूल्य: वह ऑब्जेक्ट — जैसे कि स्ट्रिंग, लिस्ट, टपल, डिक्शनरी या सेट — जिसकी लंबाई आप मापना चाहते हैं।

प्रतिलाभ की मात्रा

len() फ़ंक्शन एक पूर्णांक लौटाता है, यानी किसी स्ट्रिंग में वर्णों की संख्या या किसी ऐरे, सूची या संग्रह में तत्वों की संख्या। लौटाए गए मान का सटीक अर्थ उस ऑब्जेक्ट के प्रकार पर निर्भर करता है जिसे फ़ंक्शन को पास किया जाता है।

  • स्ट्रिंग्स: len() फ़ंक्शन स्ट्रिंग में मौजूद वर्णों की संख्या लौटाता है, जिसमें विराम चिह्न, रिक्त स्थान और सभी प्रकार के विशेष वर्ण शामिल होते हैं।
  • खाली: एक खाली स्ट्रिंग या खाली संग्रह 0 लौटाता है, क्योंकि इसमें शून्य तत्व होते हैं।
  • संग्रह: len() बिल्ट-इन फ़ंक्शन किसी कलेक्शन में संग्रहीत तत्वों की संख्या लौटाता है।
  • लेखनत्रुटि: len() फ़ंक्शन, इसे पास किए गए ऑब्जेक्ट के प्रकार पर निर्भर करता है। बिना लंबाई वाला मान, जैसे कि पूर्णांक, पास करने पर TypeError उत्पन्न होता है।
  • शब्दकोश: किसी शब्दकोश में, प्रत्येक कुंजी-मान युग्म को एक इकाई के रूप में गिना जाता है, इसलिए len() कुंजियों की संख्या लौटाता है।

के उदाहरण Python len() फ़ंक्शन

निम्नलिखित उदाहरण दर्शाते हैं कि len() फ़ंक्शन का उपयोग करके विभिन्न वस्तुओं की लंबाई कैसे ज्ञात की जाती है। Python स्ट्रिंग, लिस्ट, टपल, डिक्शनरी और ऐरे सहित ऑब्जेक्ट।

उदाहरण 1: किसी डोरी की लंबाई कैसे ज्ञात करें

# testing len() 
str1 = "Welcome to  Guru99 Python Tutorials"
print("The length of the string  is :", len(str1))

आउटपुट:

The length of the string  is : 35

उदाहरण 2: किसी सूची की लंबाई कैसे ज्ञात करें

# to find the length of the list

list1 = ["Tim","Charlie","Tiffany","Robert"]

print("The length of the list is", len(list1))

आउटपुट:

The length of the list is 4

उदाहरण 3: टपल की लंबाई कैसे ज्ञात करें

# to find the length of the tuple

Tup = ('Jan','feb','march')

print("The length of the tuple is", len(Tup))

आउटपुट:

The length of the tuple is 3

उदाहरण 4: किसी शब्दकोश की लंबाई कैसे ज्ञात करें

# to find the length of the Dictionary

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}

print("The length of the Dictionary is", len(Dict))

आउटपुट:

The length of the Dictionary is 4

उदाहरण 5: ऐरे की लंबाई कैसे ज्ञात करें

# to find the length of the array

arr1 = ['Tim','Charlie','Tiffany','Robert']

print("The length of the Array is", len(arr1))

आउटपुट:

The length of the Array is 4

len() फ़ंक्शन का उपयोग किए बिना किसी स्ट्रिंग की लंबाई कैसे ज्ञात करें Python

len() फ़ंक्शन किसी स्ट्रिंग को मापने का सबसे तेज़ और सबसे आसान तरीका है, लेकिन आप मैन्युअल रूप से भी वर्णों की गणना कर सकते हैं। यह कोडिंग इंटरव्यू में अक्सर पूछा जाने वाला एक अभ्यास है, और हर विधि स्ट्रिंग में लूप चलाती है और साथ ही काउंटर को बढ़ाती जाती है।

सबसे आम तरीका फॉर लूप का उपयोग करना है:

# length of a string without len()
mystr = "Guru99"
count = 0
for char in mystr:
    count += 1
print("The length is", count)

आउटपुट:

The length is 6

एक छोटा विकल्प जनरेटर एक्सप्रेशन के साथ sum() फ़ंक्शन का उपयोग करता है, जो स्ट्रिंग में प्रत्येक कैरेक्टर के लिए 1 जोड़ता है:

mystr = "Guru99"
length = sum(1 for char in mystr)
print("The length is", length)

आउटपुट:

The length is 6

len() फ़ंक्शन का उपयोग किए बिना वर्णों की गणना करने के अन्य तरीके निम्नलिखित हैं:

  • एक while लूप जो स्ट्रिंग को तब तक स्लाइस करता है जब तक वह खाली न हो जाए, और प्रत्येक पास पर एक काउंटर को बढ़ाता है।
  • enumerate() फ़ंक्शन, जो tracयह पुनरावृति के दौरान प्रत्येक वर्ण का सूचकांक नोट करता है।
  • एक पुनरावर्ती फ़ंक्शन जो शेष सबस्ट्रिंग की लंबाई में 1 जोड़कर मान लौटाता है।

ये मैन्युअल तरीके बिल्ट-इन len() की तुलना में धीमे हैं, इसलिए इन्हें सीखने या इंटरव्यू की प्रैक्टिस के लिए ही इस्तेमाल करें। रोज़मर्रा के कोड में, len() सबसे तेज़ और स्पष्ट विकल्प है।

कैसे करता है Python len() फ़ंक्शन आंतरिक रूप से कैसे काम करता है?

len() फ़ंक्शन कैसे काम करता है, यह समझने से इसकी गति का कारण स्पष्ट हो जाता है। जब आप किसी ऑब्जेक्ट पर len() फ़ंक्शन को कॉल करते हैं, Python यह प्रत्येक तत्व को एक-एक करके स्कैन नहीं करता है। इसके बजाय, यह ऑब्जेक्ट के विशेष __len__() मेथड को कॉल करता है, जिसका अर्थ है कि एक्सप्रेशन len(x) x.__len__() के समतुल्य है।

स्ट्रिंग, लिस्ट, टपल, डिक्शनरी और सेट जैसे अंतर्निहित कंटेनर अपना आकार एक विशेषता के रूप में संग्रहीत करते हैं। हर बार जब आप कोई तत्व जोड़ते या हटाते हैं, Python यह संग्रहीत संख्या को अपडेट करता है। जब len() फ़ंक्शन को कॉल किया जाता है, तो यह बस उस पूर्व-संग्रहीत मान को पढ़ता है और उसे वापस कर देता है।

क्योंकि लंबाई पहले से ही ज्ञात है, इसलिए len() फ़ंक्शन स्थिर समय में चलता है, जिसे O(1) के रूप में लिखा जाता है। ऑब्जेक्ट में पाँच आइटम हों या पाँच मिलियन, इसमें लगने वाला समय समान होता है। आप एक पूर्णांक लौटाने वाला __len__() मेथड परिभाषित करके अपनी कक्षाओं में len() फ़ंक्शन का समर्थन भी जोड़ सकते हैं:

class Team:
    def __len__(self):
        return 11

squad = Team()
print(len(squad))

आउटपुट:

11

इस डिज़ाइन के कारण ही len() प्रत्येक बिल्ट-इन प्रकार के साथ-साथ किसी भी कस्टम ऑब्जेक्ट में, जो __len__() विधि को लागू करता है, लगातार व्यवहार करता है।

" बारे में और सीखो Python स्ट्रिंग विधियाँ

अक्सर पूछे जाने वाले प्रश्न

हाँ। len() स्ट्रिंग में मौजूद हर अक्षर को गिनता है, जिसमें स्पेस, टैब, अंक और विराम चिह्न भी शामिल हैं। उदाहरण के लिए, len(“Guru 99!”) 8 लौटाता है, क्योंकि स्पेस और विस्मय चिह्न को एक-एक कैरेक्टर के रूप में गिना जाता है।

len() फ़ंक्शन खाली स्ट्रिंग के लिए 0 लौटाता है, क्योंकि इसमें कोई अक्षर नहीं होते। len() फ़ंक्शन शून्य-सूचकांकित नहीं है; यह तत्वों की गणना एक से शुरू करता है, इसलिए len(“a”) 1 लौटाता है और len(“”) 0 लौटाता है।

पूर्णांकों में एकाधिक मान संग्रहित नहीं किए जा सकते, इसलिए उनकी कोई लंबाई नहीं होती। len(123) को कॉल करने पर “TypeError: object of type 'int' has no len()” त्रुटि आती है। अंकों की गणना करने के लिए पहले len(str(123)) का उपयोग करके संख्या को परिवर्तित करें।

जी हां। किसी शब्दकोश के लिए, len() कुंजी-मान युग्मों की संख्या लौटाता है, प्रत्येक युग्म को एक बार गिनते हुए। किसी समुच्चय के लिए, len() अद्वितीय तत्वों की संख्या लौटाता है, क्योंकि समुच्चय स्वचालित रूप से दोहराए गए मानों को हटा देता है।

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

max() फ़ंक्शन में len को key के रूप में पास करें: max(words, key=len) सूची में सबसे लंबी स्ट्रिंग लौटाता है। इसी तरह, min(words, key=len) सबसे छोटी स्ट्रिंग लौटाता है। इससे प्रत्येक लंबाई की तुलना करने के लिए मैन्युअल लूप लिखने की आवश्यकता नहीं होती है।

मशीन लर्निंग पाइपलाइन लगातार len() फ़ंक्शन का उपयोग करती हैं — डेटासेट के आकार की जाँच करने, फ़ीचर और लेबल के मिलान की पुष्टि करने और अनुक्रम की लंबाई मापने के लिए। मॉडल अक्सर टेक्स्ट को समान len() लंबाई तक बढ़ाते या घटाते हैं ताकि डेटा के बैच एक ही आकार के हों।

जी हां। GitHub Copilot आपके लक्ष्य का वर्णन करने वाली एक छोटी टिप्पणी से len() जांच और गिनती लूप को स्वतः पूर्ण कर देता है। एजेंटिक एआई सहायक इससे भी आगे बढ़कर लंबाई-मान्यकरण तर्क लिखते हैं, TypeError के विरुद्ध सुरक्षा खंड जोड़ते हैं और आपके लिए परीक्षण चलाते हैं।

इस पोस्ट को संक्षेप में इस प्रकार लिखें: