Python Console से Input कैसे लें hindi

Arpit Nageshwar
⏰ 3 min read

Python में Console से Input कैसे लें – input() Function, Type Conversion और Common Errors | Complete Guide

विषय सूची (Table of Contents)

Python Input का परिचय – Console से Input क्या है?

  • जब भी हम कोई प्रोग्राम लिखते हैं, तो किसी न किसी बिंदु पर हमें यूज़र से कोई जानकारी चाहिए होती है — जैसे उसका नाम, उसकी उम्र, या किसी गणना के लिए संख्याएँ। इसी जानकारी को लेने की प्रक्रिया को "इनपुट" कहा जाता है।

  • Python में कंसोल (यानी टर्मिनल या कमांड प्रॉम्प्ट) से इनपुट लेने के लिए एक built-in function दिया गया है जिसका नाम है input()। यह function प्रोग्राम को यूज़र से सीधे बातचीत करने लायक बना देता है।

  • सोचिए आप एक दुकानदार हैं और ग्राहक से पूछ रहे हैं "आपको क्या चाहिए?" — ग्राहक जो भी जवाब देगा, आप उसी के अनुसार आगे का काम करेंगे। ठीक इसी तरह Python प्रोग्राम भी input() के माध्यम से यूज़र से पूछता है, और यूज़र जो कुछ भी टाइप करता है, प्रोग्राम उसी value का उपयोग करके आगे का काम करता है।

  • यह विषय परीक्षाओं में बहुत महत्वपूर्ण है क्योंकि लगभग हर वास्तविक प्रोग्राम — चाहे वह कैलकुलेटर हो, बिलिंग सिस्टम हो या कोई गेम — इनपुट लेने से ही शुरू होता है। इसलिए इस concept को अच्छी तरह समझना बहुत ज़रूरी है।

Input Function – input() Function कैसे काम करता है?

input() Function का Flow 1. प्रोग्राम input() लाइन तक पहुँचता है जैसे: naam = input("नाम बताओ: ") 2. Prompt संदेश स्क्रीन पर दिखता है "नाम बताओ: " कंसोल पर प्रिंट होता है 3. प्रोग्राम यहीं रुक (pause) जाता है यूज़र के टाइप करने का इंतज़ार करता है 4. यूज़र कुछ टाइप करके Enter दबाता है जैसे यूज़र टाइप करता है: Rohit 5. input() value को string बनाकर लौटाता है यहाँ value हमेशा string type की होती है 6. Value वैरिएबल में स्टोर हो जाती है naam वैरिएबल में "Rohit" स्टोर हुआ

यह डायग्राम दिखा रहा है कि जब Python कोड में input() कॉल होता है, तो प्रोग्राम कैसे रुककर यूज़र का इंतज़ार करता है और उसकी दी गई value को string के रूप में वैरिएबल में स्टोर करता है।

  • input() function का बुनियादी syntax:
    Python में इनपुट लेने का सबसे सरल तरीका है:

    naam = input("अपना नाम लिखिए: ")
    print("नमस्ते,", naam)
    

    यहाँ जो भी संदेश double quotes के अंदर लिखा है, उसे prompt कहा जाता है — यह सिर्फ़ यूज़र को बताने के लिए होता है कि क्या टाइप करना है। यह लिखना अनिवार्य नहीं है, लेकिन इससे प्रोग्राम user-friendly बन जाता है।

  • सबसे ज़रूरी बात:
    input() function जो भी value लौटाता है, वह हमेशा string (str) प्रकार की होती है — चाहे यूज़र ने संख्या ही क्यों न टाइप की हो। यह बिंदु परीक्षा में बहुत बार पूछा जाता है, इसलिए इसे अच्छी तरह याद रखना ज़रूरी है।

  • बिना prompt के भी input लिया जा सकता है:
    अगर आप prompt नहीं लिखना चाहते तो भी input() का उपयोग कर सकते हैं, बस कर्सर खाली लाइन पर blink करेगा:

    value = input()
    print(value)
    

अलग-अलग प्रकार का Input पढ़ना – Reading Different Types of Input

  • 1. String Input लेना (टेक्स्ट):
    जब हमें कोई नाम, शहर या वाक्य टाइप का डेटा चाहिए हो, तो सीधे input() का उपयोग किया जा सकता है क्योंकि परिणाम पहले से ही string होता है।

    city = input("आप किस शहर में रहते हैं: ")
    print("आप", city, "में रहते हैं")
    
  • 2. Integer Input लेना (पूर्णांक):
    अगर उम्र, रोल नंबर या कोई गिनती लेनी हो, तो input() के result को int() से wrap कर देते हैं।

    age = int(input("अपनी उम्र बताओ: "))
    print("अगले साल आप", age + 1, "साल के हो जाओगे")
    
  • 3. Float Input लेना (दशमलव संख्या):
    कीमत, ऊँचाई या वज़न जैसी दशमलव values लेने के लिए float() का उपयोग होता है।

    price = float(input("वस्तु की कीमत बताओ: "))
    print("GST सहित कुल राशि:", price * 1.18)
    
  • 4. एक ही लाइन में कई values लेना:
    कभी-कभी एक ही लाइन में दो या तीन values को space से अलग करके लेनी होती हैं। इसके लिए split() का उपयोग किया जाता है।

    a, b = input("दो संख्याएँ space से अलग करके लिखो: ").split()
    print("पहली संख्या:", a)
    print("दूसरी संख्या:", b)
    

    यहाँ भी ध्यान रहे कि a और b दोनों string ही होंगे, जब तक इन्हें अलग से convert न किया जाए।

  • 5. कई Integers एक साथ लेना:
    Competitive coding और परीक्षाओं में यह पैटर्न बहुत आम है, जहाँ एक लाइन में कई संख्याएँ इनपुट होती हैं और उन्हें list में बदलना होता है।

    numbers = list(map(int, input("संख्याएँ लिखो: ").split()))
    print("योग है:", sum(numbers))
    

    यहाँ map() function हर value को int() में बदलता है और list() उन सभी को एक list के अंदर एकत्र कर देता है।

  • 6. एक अक्षर वाला Input:
    Python में अलग से कोई "char" डेटा टाइप नहीं होता, इसलिए एक अक्षर भी string की तरह ही माना जाता है।

    grade = input("अपना ग्रेड लिखो (A/B/C): ")
    print("आपका ग्रेड है:", grade)
    

Input Values का Type Conversion कैसे करें?

input() का Type Conversion input() से हमेशा String मिलती है int(input()) पूर्णांक बनाता है float(input()) दशमलव संख्या बनाता है str(input()) वैसे ही string रहता है list(map(int, ...)) कई संख्याओं की list बनाता है

यह डायग्राम दिखा रहा है कि input() से मिलने वाली string value को ज़रूरत के अनुसार int, float या list जैसे अलग-अलग types में कैसे बदला जाता है।

  • Type Conversion क्यों ज़रूरी है?
    जैसा ऊपर बताया गया, input() function जो भी value लौटाता है वह हमेशा string होती है। अगर उस value पर कोई गणितीय गणना (जैसे जोड़, गुणा) करनी हो, तो पहले उसे संख्या (number) प्रकार में बदलना पड़ता है, वरना Python एरर दे देता है।

  • गलत तरीका (बिना conversion के):

    num1 = input("पहली संख्या: ")
    num2 = input("दूसरी संख्या: ")
    print(num1 + num2)
    

    अगर यूज़र 5 और 10 टाइप करे, तो परिणाम "15" नहीं बल्कि "510" प्रिंट होगा, क्योंकि दोनों values string हैं और + operator strings को जोड़ता (concatenate करता) है, गणितीय योग नहीं करता।

  • सही तरीका (conversion के साथ):

    num1 = int(input("पहली संख्या: "))
    num2 = int(input("दूसरी संख्या: "))
    print(num1 + num2)
    

    अब अगर यूज़र 5 और 10 टाइप करे, तो परिणाम सही तरीके से 15 प्रिंट होगा, क्योंकि अब दोनों values integer बन चुकी हैं।

  • Type Conversion के लिए महत्वपूर्ण functions:

    int() – string को पूर्णांक (whole number) में बदलता है, जैसे "25" को 25 बना देता है।

    float() – string को दशमलव संख्या में बदलता है, जैसे "3.14" को 3.14 बना देता है।

    str() – किसी भी value को वापस string में बदल देता है, जो print statement में संख्याओं और टेक्स्ट को जोड़ने के लिए उपयोगी होता है।

    bool() – value को True या False में बदलता है, हालाँकि input के साथ यह कम उपयोग होता है।

  • एक व्यावहारिक उदाहरण जिसमें दोनों तरह का उपयोग हो:

    naam = input("आपका नाम: ")
    age = int(input("आपकी उम्र: "))
    print(naam + " की उम्र " + str(age) + " साल है")
    

    यहाँ age को int() से संख्या बनाया गया, लेकिन प्रिंट करते समय उसे वापस str() से string में बदलना पड़ा, क्योंकि + operator string के साथ केवल string को ही जोड़ सकता है।

Input लेते समय होने वाली आम गलतियाँ – Common Errors

  • 1. ValueError – गलत प्रकार की value को convert करना:
    अगर यूज़र ने कोई अक्षर या शब्द टाइप किया हो और आप उसे int() से convert करने की कोशिश करें, तो Python ValueError दे देता है।

    age = int(input("उम्र बताओ: "))
    

    अगर यूज़र "बीस" जैसा शब्द टाइप करे (संख्या की जगह), तो यह लाइन तुरंत crash हो जाएगी, क्योंकि उस शब्द को संख्या में नहीं बदला जा सकता।

  • 2. Type Conversion करना भूल जाना:
    जैसा ऊपर दिखाया गया, अगर संख्याओं को जोड़ने से पहले int() या float() लगाना भूल जाएँ, तो परिणाम गलत आता है क्योंकि strings आपस में जुड़ जाती हैं, गणितीय योग नहीं होता।

  • 3. split() के समय अतिरिक्त spaces का ध्यान न रखना:
    अगर यूज़र दो संख्याओं के बीच अतिरिक्त spaces डाल दे, तो कभी-कभी unpacking में दिक्कत आ सकती है। इसलिए split() को बिना argument के उपयोग करना सुरक्षित रहता है, क्योंकि वह अतिरिक्त spaces को खुद संभाल लेता है।

  • 4. "not enough values to unpack" एरर:
    जब आप a, b = input().split() लिखते हैं लेकिन यूज़र केवल एक ही value टाइप करता है, तो Python एरर देता है कि unpack करने के लिए पर्याप्त values नहीं मिलीं। इस स्थिति को संभालने के लिए पहले values की संख्या जाँच लेनी चाहिए या try-except का उपयोग करना चाहिए।

  • 5. EOFError – Input स्ट्रीम खत्म हो जाना:
    यह एरर अधिकतर online judges या automated testing वातावरण में आती है, जब प्रोग्राम को input() कॉल करने के लिए कहा जाए लेकिन देने के लिए कोई इनपुट बचा ही न हो। सामान्य console में यह बहुत कम होता है, लेकिन परीक्षा या coding platform पर इसकी जानकारी होना ज़रूरी है।

  • 6. String को सीधे संख्या मान लेना:
    शुरुआती लोग अक्सर यह भूल जाते हैं कि input() का परिणाम हमेशा string होता है, और सीधे उसी पर गणितीय operations करने की कोशिश करते हैं, जिससे या तो एरर आता है या परिणाम अप्रत्याशित (unexpected) निकलता है।

  • 7. एरर को संभालना (try-except न लगाना):
    वास्तविक दुनिया के प्रोग्राम में यूज़र कभी भी गलत प्रकार की value दे सकता है। अगर try-except block का उपयोग न किया जाए, तो एक गलत इनपुट पूरे प्रोग्राम को crash कर सकता है।

    try:
        age = int(input("उम्र बताओ: "))
        print("आपकी उम्र है:", age)
    except ValueError:
        print("कृपया सही संख्या लिखें")
    

    इस तरह try-except लगाने से प्रोग्राम crash होने की बजाय यूज़र को एक उचित संदेश दिखा देता है।

Input लेते समय ध्यान रखने योग्य बातें – Best Practices

  • हमेशा याद रखें कि input() का परिणाम डिफ़ॉल्ट रूप से string होता है, गणना करने से पहले उसे ज़रूरत के अनुसार int() या float() में बदल लें।

  • यूज़र को स्पष्ट prompt दिखाएँ, जैसे सिर्फ़ "मान दर्ज करें" लिखने की बजाय "अपनी उम्र (संख्या में) बताओ:" लिखना ज़्यादा सहायक होता है।

  • अगर गलत इनपुट आने की संभावना हो, तो try-except block का उपयोग करके प्रोग्राम को crash होने से बचाएँ।

  • कई values लेते समय split() का उपयोग करें और यह सुनिश्चित कर लें कि यूज़र उतनी ही values दे रहा है जितनी अपेक्षित हैं।

  • परीक्षा में अगर input से संबंधित कोई प्रोग्राम लिखना हो, तो सबसे पहले यह तय करें कि value string चाहिए, integer चाहिए या float, और उसी के अनुसार conversion function चुनें।

  • बड़े प्रोग्राम्स में input() को एक अलग function के अंदर लिखना अच्छी आदत मानी जाती है, इससे कोड readable और reusable बन जाता है।

अक्सर पूछे जाने वाले प्रश्न (FAQ) – Python Input

Python में console से input लेने के लिए built-in input() function का उपयोग होता है, जैसे: naam = input("नाम बताओ: ")। यह function यूज़र द्वारा टाइप की गई value को string के रूप में लौटाता है।

input() function हमेशा string (str) प्रकार की value लौटाता है, चाहे यूज़र ने संख्या ही क्यों न टाइप की हो। इसलिए संख्याओं पर गणना करने से पहले इन्हें int() या float() से बदलना पड़ता है।

input() के परिणाम को int() function के अंदर रखें, जैसे: age = int(input("उम्र बताओ: "))। इससे string value पूर्णांक (whole number) में बदल जाती है।

split() function का उपयोग करके एक ही लाइन में कई values ली जा सकती हैं, जैसे: a, b = input().split()। अगर संख्याएँ चाहिए हों तो list(map(int, input().split())) का उपयोग करते हैं।

सबसे आम एरर ValueError होती है, जो तब आती है जब non-numeric string (जैसे "abc") को int() या float() से convert करने की कोशिश की जाती है। इससे बचने के लिए try-except block का उपयोग किया जाता है।

Arpit Nageshwar

✍️ Arpit Nageshwar

Post-graduated | Web Developer | +3 yr Experience | IIT Kharagpur Certified