payment by upi: sinhamit@icici or payment by bank account name: amit kumar sinha, account number: 2646728782 IFSC code: KKBK0005660 SWIFT: KKBKINBB

Please support if you like my work by payment through upi: sinhamit@icici or payment by bank

account name: Amit Kumar Sinha,
account number: 2646728782
IFSC code: KKBK0005660
SWIFT: KKBKINBB


range(), all(), any(), chr() built-in functions   in Category: पाइथन   by amit

🕙 Posted on 2023-08-30 at 11:32:34


कुछ अंतर्निहित फ़ंक्शन्स

    आप पिछले पृष्ठों में विभिन्न अंतर्निहित (built-in) फ़ंक्शन्स, उदाहरण के लिए print(), input(), exit(), quit(), dir(), help(), type(), id(), len(), bool(), int(), float(), str(), list(), tuple(), dict(), set(), slice(), hash(), zip(), आदि के बारे में पहले ही जान चुके हैं।

range()

उदाहरण 1:

a = range(12)
print( a, type(a) )   # आउटपुट range(0, 12) <class 'range'> है।

    range() अंतर्निहित फ़ंक्शन का उपयोग एक विशेष डेटा-प्रकार, range (श्रेणी) बनाने के लिए किया जाता है, जो एक अनुक्रम डेटा-प्रकार ऑब्जेक्ट है। हालाँकि, आप range() बिल्ट-इन फ़ंक्शन का उपयोग list(), tuple() आदि बिल्ट-इन फ़ंक्शंस के संयोजन में कर सकते हैं, जो इंडेक्स-आधारित डेटा-प्रकार शाब्दिक बनाएगा। इसका सिंटैक्स (विन्यास) range(start, stop, step ) है जहां start पहले सूचकांक पर (समावेशी inclusive) मान है, stop (अनन्य exclusive) संख्यात्मक मान है, जिसके पहले अनुक्रम बंद कर दिया जाएगा, और step वृद्धि या कमी का मान है।

उदाहरण 2:

b = list(range( 10, 22, 2 ))
print( b, type(b) )   # आउटपुट [10, 12, 14, 16, 18, 20] <class 'list'> है।

उदाहरण 3:

c = list(range( 40, 22, -2 ))
print( c, type(c) )   # आउटपुट [40, 38, 36, 34, 32, 30, 28, 26, 24] <class 'list'> है।

उदाहरण 4:

d = tuple(range( 10, 22, 2 ))
print( d, type(d) )   # आउटपुट (10, 12, 14, 16, 18, 20) <class 'tuple'> है।

उदाहरण 5:

e = tuple(range( 40, 22, -2 ))
print( e, type(e) )   # आउटपुट (40, 38, 36, 34, 32, 30, 28, 26, 24) <class 'tuple'> है।

    Caution: उपरोक्त चार उदाहरणों में, जब आप start और stop मानों को उलट देते हैं, यानी जब step मान सकारात्मक होता है, और start मान stop मान से अधिक होता है, तो range() फ़ंक्शन list() या tuple() फ़ंक्शन के साथ संयोजन में क्रमशः खाली सूची या खाली टपल बनाएगा। इसी प्रकार, जब step मान ऋणात्मक होता है, और start मान stop मान से छोटा होता है, तो range() फ़ंक्शन list() या tuple() फ़ंक्शन के साथ संयोजन में क्रमशः खाली सूची या खाली टुपल बनाएगा।

उदाहरण:

print( range( 10, 2, 2 ) )   # आउटपुट range(10, 2, 2) है।

print( range( 10, 20, -2 ) )   # आउटपुट range(10, 20, -2) है।

print( list(range( 10, 2, 2 )) )   # आउटपुट [] है।

print( list(range( 10, 20, -2 )) )   # आउटपुट [] है।

print( tuple(range( 10, 2, 2 )) )   # आउटपुट () है।

print( tuple(range( 10, 20, -2 )) )   # आउटपुट () है।

    इसके अलावा, अन्य डेटा-प्रकार भी हो सकते हैं, जो पायथन कोर में (अर्थात, str() और set()) या अन्य मॉड्यूल, जो इंडेक्स-आधारित अनुक्रम डेटा-प्रकार बनाएगें। वे सूचकांक-आधारित अनुक्रम डेटा-प्रकार range() अंतर्निहित फ़ंक्शन के आउटपुट को उपयोगी परिणामों के रूप में परिवर्तित कर सकते हैं। हालाँकि, गैर-अनुक्रमित डेटा-प्रकार, जैसे कि dict() का आउटपुट TypeError होगा जैसा कि नीचे दिखाया गया है:

उदाहरण 6:

f = str(range( 10, 22, 2 ))
print( f, type(f) )   # आउटपुट range(10, 22, 2) <class 'str'> है।
g = set(range( 10, 22, 2 ))
print( g, type(g) )   # आउटपुट {10, 12, 14, 16, 18, 20} <class 'set'> है।

उदाहरण 7:

h = dict(range( 10, 22, 2 ))
print( h, type(h) )   # आउटपुट TypeError (नीचे दिखाया गया) है।

Traceback (most recent call last):
  File "C:\xampp\htdocs\python2023\new.py", line 1, in <module>
    o = dict(range( 10, 22, 2 ))
        ^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: cannot convert dictionary update sequence element #0 to a sequence

    range() अंतर्निहित फ़ंक्शन में दो विधियाँ हैं: index() और count(), जिनकी चर्चा पिछले पृष्ठ में पहले ही की जा चुकी है ।

for लूप के बारे में अधिक

    आप अन्य प्रोग्रामिंग भाषाओं, जैसे PHP, जावास्क्रिप्ट, आदि में आम तौर पर उपयोग किए जाने वाले (पारंपरिक तरीके से) for लूप को बनाने के लिए range() अंतर्निहित फ़ंक्शन और for लूप का उपयोग कर सकते हैं। for लूप बनाने का यह पारंपरिक तरीका वेब-ऐप, पेजिनेशन और अन्य कार्यात्मकताओं (function­alities) में उपयोगी होगा। PHP में कोड यहां केवल उदाहरण के लिए है, और आपको निम्नलिखित PHP कोड निष्पादित करने के लिए PHP भाषा में दिए गए निर्देशों का पालन करना चाहिए:

PHP for Loop Examples:

<?php for( $i = 0; $i < 10; $i++ ) { echo $i . "<br />"; } /* जब आप एकल-पंक्ति टिप्पणियों का उपयोग नहीं करते हैं, तो PHP, जावास्क्रिप्ट इत्यादि को एक पंक्ति में लिखा जा सकता है। आउटपुट पहली पायथन स्क्रिप्ट के समान है। */ ?>
<?php $my_var = "Hello World"; for( $i = 0; $i < strlen($my_var); $i++ ) { echo $i . " " . $my_var[$i] . "<br />"; } /* जब आप एकल-पंक्ति टिप्पणियों का उपयोग नहीं करते हैं, तो PHP, जावास्क्रिप्ट इत्यादि को एक पंक्ति में लिखा जा सकता है। आउटपुट दूसरी पायथन स्क्रिप्ट के समान है। */ ?>

Python for Loop Examples:

उदाहरण 8:

for i in range(0, 10, 1):
    print(i)   # आउटपुट नीचे दिखाया गया है:

0
1
2
3
4
5
6
7
8
9

उदाहरण 9:

my_var = "Hello World"
for i in range(0, len(my_var), 1):
    print(i, my_var[i])   # आउटपुट नीचे दिखाया गया है:

0 H
1 e
2 l
3 l
4 o
5  
6 W
7 o
8 r
9 l
10 d

    जब आप चाहते हैं कि पहला आइटम/वर्ण सम्मिलित हो, और प्रत्येक आइटम/वर्ण को for लूप से आउटपुट में प्रदर्शित या उपयोग किया जाए, जैसा कि range() फ़ंक्शन के पहले उदाहरण में दिखाया गया है, तो आप उपरोक्त उदाहरणों में दिए गए start और step पैरामीटर के लिए वैकल्पिक तर्कों को छोड़ सकते हैं।

उदाहरण 10:

my_var = "Hello World"
for i in range(0, len(my_var), 2):
    print(i, my_var[i])   # आउटपुट नीचे दिखाया गया है:

0 H
2 l
4 o
6 W
8 r
10 d

    केवल start तर्क को छोड़ने से कुछ भी आउटपुट नहीं मिलेगा, क्योंकि range() अंतर्निहित फ़ंक्शन range(len(my_var), 2) को range(10, 2) समकक्ष मानेगा (जिसमें केवल start और stop तर्क पारित किए जाते हैं)। range() फ़ंक्शन या तो केवल एक तर्क लेता है (अर्थात, stop), या दो तर्क (अर्थात, start, stop), या तीन तर्क (अर्थात, start, stop, step) लेता है। कुछ विधियों और फ़ंक्शन्स के लिए, आप अपनी पसंद के अनुसार कोष्ठक के अंदर कीवर्ड नाम और उसके संबंधित मान को तर्क के रूप में पास कर सकते हैं, लेकिन range() कोई कीवर्ड तर्क नहीं लेता है, और निम्नलिखित त्रुटि दिखाई जाएगी।

उदाहरण:

print( range( start=0, stop=10, step=2 ) )

Traceback (most recent call last):
  File "C:\xampp\htdocs\python2023\new.py", line 1, in <module>
    print( range( start=0, stop=10, step=2 ) )
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: range() takes no keyword arguments

print( range( stop=10, step=2 ) )

Traceback (most recent call last):
  File "C:\xampp\htdocs\python2023\new.py", line 1, in <module>
    print( range( stop=10, step=2 ) )
            ^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: range() takes no keyword arguments

कुछ सरल अंतर्निहित फ़ंक्शन्स

    विभिन्न प्रोग्रामिंग भाषाओं में, कुछ शाब्दिक को मिथ्या (falsy) मान कहा जाता है, उदाहरण के लिए, False, (0 शून्य या तो पूर्णांक या फ्लोट), '' (खाली स्ट्रिंग), [] (खाली सूची), () (खाली टुपल), {} (खाली डिक्शनरी/मैपिंग), आदि का समान मिथ्या (Falsy) मान के रूप में, मूल्यांकन किया जाता है और तब भी जब उन्हें अन्य डेटा-प्रकारों में टाइप-कास्ट किया जाता है। कुछ डेटा-प्रकार (उदाहरण के लिए False, None या अन्य गैर-पुनरावर्तनीय non-iterables) को पुनरावर्तनीय डेटा-प्रकार, जैसे सूची, टुपल में टाइप-कास्ट नहीं किया जा सकता है। ऐसा करने से TypeError मिलेगा।

    अन्य सभी शाब्दिकों का मूल्यांकन True (या सत्य truthy मान) के रूप में किया जाता है। याद रखें, [''], ('',) कोष्ठक की एक जोड़ी के अंदर एक आइटम के बाद जब अल्पविराम चिह्न नहीं होता है, तो उसे टपल शाब्दिक के रूप में नहीं माना जाता है, {''} जब घुंघराले ब्रेसिज़ की एक जोड़ी में कोई आइटम कुंजी:मान   जोड़ी में नहीं होता है, तो वह डेटा-प्रकार डिक्शनरी नहीं है, {None:''}, {'':None}, [[]], ((),), आदि खाली नहीं हैं, लेकिन इन अनुक्रम शाब्दिकों में एक आइटम है, जो खाली स्ट्रिंग/सूची/ट्यूपल इत्यादि है।

print( int( False ) )   # आउटपुट 0 (शून्य) है।

print( bool( 0 ) )   # आउटपुट False है।

print( bool( '' ) )   # आउटपुट False है।

print( bool( [] ) )   # आउटपुट False है।

print( bool( () ) )   # आउटपुट False है।

print( bool( None ) )   # आउटपुट False है।

print( bool( [''] ) )   # आउटपुट True है।

print( bool( ('',) ) )   # आउटपुट True है।

print( bool( {''} ) )   # आउटपुट True है।

print( bool( {'': None} ) )   # आउटपुट True है।

print( bool( {None: ''} ) )   # आउटपुट True है।

print( bool( [[]] ) )   # आउटपुट True है।

print( bool( ((),) ) )   # आउटपुट True है।

    ऊपर इन उदाहरणों का वर्णन आपको यह समझाने के लिए किया गया है कि जब भी आप नियंत्रण संरचनाओं/ब्लॉकों (अर्थात, if elif else), लूप्स (for, while), अन्य अंतर्निहित फ़ंक्शंस, या कस्टम फ़ंक्शंस इत्यादि की स्थिति की जाँच में मिथ्या शाब्दिक का उपयोग करते हैं, तो आपको अपेक्षित परिणाम नहीं मिल सकता है, क्योंकि उन शर्तों (conditions) का मूल्यांकन False किया जाएगा। इसलिए, आपको इन मिथ्या मानों का सावधानीपूर्वक उपयोग करना चाहिए, वह भी निम्नलिखित अंतर्निहित फ़ंक्शन में।

abs(x)

तर्क का पूर्ण मान लौटाएँ.

print( abs( -23.5 ) )   # आउटपुट 23.5 है।

print( abs( False ) )   # आउटपुट 0 है।

all(iterable, /)

यदि पुनरावर्तनीय में सभी मान x के लिए bool(x) सत्य (True) है, तो True लौटें। यदि पुनरावर्तनीय खाली है, तो True लौटें।

    all() अंतर्निहित फ़ंक्शन यह जांचता है कि किसी सूची, टुपल इत्यादि में सभी आइटम का मूल्यांकन True के रूप में किया गया है या नहीं। जब किसी आइटम का मूल्यांकन False के रूप में किया जाता है, तो all() फ़ंक्शन False आउटपुट देगा।

print( all( [True, False, None] ) )   # आउटपुट False है।

print( all( [True, [[]], True] ) )   # आउटपुट True है। (पुनरावर्तनीय iterables के अंदर कम से कम एक आइटम होना चाहिए, ताकि वह खाली न हो।)

any(iterable, /)

यदि पुनरावर्तनीय में किसी भी x के लिए bool(x) सत्य (True) है, तो True लौटें। यदि पुनरावर्तनीय खाली है, तो False लौटें।

    any() अंतर्निहित फ़ंक्शन यह जाँचता है कि किसी सूची, टुपल आदि में किसी आइटम का मूल्यांकन True के रूप में किया गया है या नहीं। जब सभी वस्तुओं का मूल्यांकन False के रूप में किया जाता है, तो any() फ़ंक्शन False आउटपुट देगा।

print( any( [True, False, True] ) )   # आउटपुट True है।

print( any( [[], (), ''] ) )   # आउटपुट False है। (जब पुनरावर्तनीय में सभी आइटमों का मूल्यांकन False के रूप में किया जाता है, तो आउटपुट False होता है।)

chr(i, /)

क्रमसूचक i के साथ एक वर्ण की यूनिकोड स्ट्रिंग लौटाएँ; 0 <= i <= 0x10ffff.

print( chr( 90 ) )   # आउटपुट Z है।

print( chr( 2309 ) )   # आउटपुट है। (हिन्दी भाषा का पहला अक्षर, हालाँकि, आप CONSOLE या VSCode एडिटर टर्मिनल में इस प्रकार के अक्षर नहीं देख सकते हैं। मेरे MS-DOS कंसोल में, जब मैंने आउटपुट की प्रतिलिपि (copy Ctrl C या Cmd C से) बनाई, और इसे VSCode एडिटर में पेस्ट किया (चिपकाया), इस पेज को लिखते समय, आउटपुट -दिखाई जा रही है!)

    इन UNICODE वर्णों को UNICODE प्रतीक पृष्ठों में वर्णित किया गया है और आप उन्हें एनाकोंडा सॉफ़्टवेयर के माध्यम से, या नीचे बताए अनुसार पायथन के एक मॉड्यूल के रूप में स्थापित करके ज्यूपिटर नोटबुक में (33 से 13311 तक, और भी अधिक...) प्रदर्शित कर सकते हैं। आपको ज्यूपिटर नोटबुक को आपके प्रोजेक्ट फ़ोल्डर से चलाने (run) की जरूरत नहीं है हालाँकि, जब आप पायथन स्क्रिप्ट का प्रयोग करने या लिखने के बाद अपना काम सहेजते हैं, तो यह उस फ़ोल्डर में सहेजा जाएगा, जहाँ आप निम्नलिखित कमांड चलाते हैं।

    यदि आप मैक ओएस (Mac OS) या लिनिक्स (Linux) ओएस (उबंटू ubuntu, सेंट centOS इत्यादि) का उपयोग कर रहे हैं, तो आप केवल python या py (आमतौर पर विंडोज Windows ओएस में चलाया जाता है) के बजाय python3 या python3.10 टाइप करके इसे चला सकते हैं। अपना प्रोजेक्ट फ़ोल्डर ढूंढें, जैसा कि नीचे दिखाया गया है। pip स्थापित करें, यदि यह आपके सिस्टम (PC) में पहले से इंस्टॉल नहीं है। आप निम्नलिखित आदेशों को निष्पादित करके (executing) अपने पायथन और pip के संस्करण की जांच कर सकते हैं।

C:\Users\yourName>cd \
C:\>cd xampp\htdocs\python2023

C:\xampp\htdocs\python2023>python --version
C:\xampp\htdocs\python2023>python -m pip --version

    यदि उपरोक्त आदेश आपको PIP संस्करण नहीं दिखाता है, तो आप उस फ़ोल्डर के भीतर जहां पायथन प्रोग्राम स्थापित है, directory को scripts में बदल सकते हैं। या, आपने अपने सिस्टम में अपना Environ­ment Variable पथ घोषित नहीं किया है। आपको Environ­ment Variable पथ में PIP जोड़ने या PIP स्थापित करने और फिर उसका पथ जोड़ने के लिए पिछले पृष्ठों पर जाना चाहिए।

C:\xampp\htdocs\python2023>pip --version
C:\xampp\htdocs\python2023>pip install --upgrade pip

C:\xampp\htdocs\python2023>python -m pip install --upgrade pip

    अब, आप अपनी पायथन लाइब्रेरी में ज्यूपिटर नोटबुक स्थापित कर सकते हैं। यदि pip स्थापित है, और pip --version परिणाम नहीं दिखा रहा है, तो आप pip के बजाय pip3 प्रयास कर सकते हैं। इन कमांड्स का शेष सिंटैक्स समान है।

C:\xampp\htdocs\python2023>python -m pip install notebook

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

C:\xampp\htdocs\python2023>python -m pip install jupyter
C:\xampp\htdocs\python2023>python -m pip list
C:\xampp\htdocs\python2023>python -m jupyter notebook

    जब आप उपरोक्त आदेश निष्पादित करते हैं, तोज्यूपिटर नोटबुकवेब-ब्राउज़र में चलना शुरू हो जाएगा। आपको VSCode एडिटर टर्मिनल या कमांड प्रॉम्प्ट कंसोल को बंद नहीं करना चाहिए। जब आप प्रयोग कर लें और अपना कार्य सहेज लें, तो आप VSCode एडिटर टर्मिनल या कमांड प्रॉम्प्ट कंसोल पर फिर से जा कर, और Ctrl C या Cmd C दबाकर ज्यूपिटर नोटबुक बंद/समाप्त (kill/terminate) कर सकते हैं।

C:\xampp\htdocs\python2023>py -m jupyter notebook

_ _ _ _
| | | |_ __ __| |__ _| |_ ___
| |_| | '_ \/ _` / _` | _/ -_)
\___/| .__/\__,_\__,_|\__\___|
|_|

Read the migration plan to Notebook 7 to learn about the new features and the actions to take if you are using extensions.

https://jupyter-notebook.readthedocs.io/en/latest/migrate_to_notebook7.html

Please note that updating to Notebook 7 might break some of your extensions.

[I 13:12:58.708 NotebookApp] Serving notebooks from local directory:C:\xampp\htdocs\python2023
[I 13:12:58.708 NotebookApp] Jupyter Notebook 6.5.4 is running at:
[I 13:12:58.708 NotebookApp] http://localhost:8888/?token=2136257ca151da9865a862625ac1cf34c2204bfd3c034a5e
[I 13:12:58.708 NotebookApp] or http://127.0.0.1:8888/?token=2136257ca151da9865a862625ac1cf34c2204bfd3c034a5e
[I 13:12:58.708 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
[C 13:12:58.802 NotebookApp]

    To access the notebook, open this file in a browser:
        file:///C:/Users/priyamit/AppData/Roaming/jupyter/runtime/nbserver-6796-open.html
    Or copy and paste one of these URLs:
        http://localhost:8888/?token=2136257ca151da9865a862625ac1cf34c2204bfd3c034a5e
    or http://127.0.0.1:8888/?token=2136257ca151da9865a862625ac1cf34c2204bfd3c034a5e

    ज्यूपिटर नोटबुक ठीक से, चलाने के लिए आपको अपने कंप्यूटर पर अपाचे सर्वर (apache server) स्थापित करने की आवश्यकता हो सकती है। इसलिए, मैंने पहले ही उल्लेख किया है कि (अपाचे सर्वर, PHP, MySQL सहित - एक डेटाबेस जो पायथन वेब ऐप बनाते समय आवश्यक होगा,) XAMPP कैसे इंस्टॉल करें। अपने डिफ़ॉल्ट वेब ब्राउज़र की जांच करें, या वेब ब्राउज़र के एड्रेस बार में टाइप करें: http://localhost:8888/ या http://127.0.0.1:8888/ यदि jupyter notebook स्वयं नहीं चलता है। उपरोक्त चित्रण में दिखाए गए टोकन की नकल न करें।

ज्यूपिटर नोटबुक चलाना

    आपको ज्यूपिटर नोटबुक में दो महत्वपूर्ण कमांड याद रखने चाहिए:
(1) पायथन कोड निष्पादित करने के लिए Shift Enter या Shift Return, और
(2) अगली पंक्ति/सेल पर जाने के लिए Alt Enter या Option Return
आप print() फ़ंक्शन के बिना सीधे पायथन कोड चला सकते हैं, और आपको उसी ब्राउज़र विंडो में आउटपुट मिलेगा।

chr( 2309 )   # यह आउटपुट करेगा (कोड को ठीक से चलाने/निष्पादित करने के लिए PYTHON प्रोग्रामिंग के सभी नियम लागू किए जाएंगे।)

ज्यूपिटर नोटबुक पायथन कोड

    33 और 13311 के बीच, कई यूनिकोड प्रतीकों को अभी तक परिभाषित नहीं किया गया है, इसलिए आप उनमें से कुछ का उपयोग नहीं कर सकते हैं, उदाहरण के लिए, ΢ (यूनिकोड प्रतीक लिखना: HTML में &#930; , CSS में \\0930; , और पायथन में बस 930, आदि)। आप इस पेज के नीचे कई इमोजी प्रतीकों (127744 से 129425 तक) के लिंक भी देख सकते हैं। हेक्सा-दशमलव में, अंक 0 से f (अर्थात्, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, a, b, c, d, e, f) होते हैं। इन छह अल्फ़ा-अंकों को अपरकेस में भी लिखा जा सकता है। F 15 है (0 पहला अंक है, इसलिए F सोलहवां अंक है), FF 255 (256-1) है, FFF 4095 (16*16*16 - 1) है, और FFFF 65535 (16*16*16*16 - 1) है। अतः, 10FFFF 655359 (10*16*16*16*16 - 1) है।

    कुछ और अंतर्निहित फ़ंक्शन्स पर अगले पृष्ठ में चर्चा की जाएगी।


Leave a Comment: