अजगर इनपुट नियंत्रण पाश

0

सवाल

अजगर शुरुआत यहाँ. अभ्यास उपयोगकर्ता इनपुट नियंत्रण. की कोशिश कर रहा है बनाने के लिए उपयोगकर्ता इनपुट पाश की शुरुआत करने के लिए अगर कुछ भी लेकिन एक पूरी संख्या 1 और 10 के बीच किया जाता है. की कोशिश कर रहा घंटे के लिए, उपयोग करने की कोशिश की कोशिश करो और को छोड़कर आदेशों लेकिन नहीं कर सका यह सही ढंग से. मैं क्या कर रहा हूँ गलत? धन्यवाद ।

संपादित करें: बहुत बहुत धन्यवाद आपकी मदद के लिए हर कोई, लेकिन समस्या अभी भी हल नहीं है (लेकिन बहुत करीब!) मैं कोशिश कर रहा हूँ करने के लिए बाहर आंकड़ा कैसे करने के लिए पाश वापस शुरुआत करने के लिए अगर कुछ भी लेकिन एक पूरी संख्या टाइप है. एजेंट बिस्कुट (ऊपर) ने एक महान जवाब के लिए अस्थायी संख्या है, लेकिन किसी भी शब्द या अक्षर टाइप है कि अभी भी एक त्रुटि पैदा करता है. Im की कोशिश कर रहा है समझने के लिए कैसे पाश करने के लिए जब कुछ भी यादृच्छिक (छोड़कर पूरे नंबर 1 और 10 के बीच) लिखा गया है. कोई भी ऊपर के उदाहरण का उत्पादन किया corrcct का परिणाम है । आपकी मदद के लिए धन्यवाद

while True:
    print("Enter a number between 1 and 10")
    number = int(input())
    if (number > 0) and (number < 10):
        print("Thank you, the end.")
        break
    else number != (> 0 and < 10):
        print("It has to be a whole number between 1 and 10.")
        print("Please try again:")
controls input loops python
2021-11-15 08:25:06
3
0

मैं पहचान की है, कुछ समस्या है ।

सबसे पहले, इनपुट कथन आप का उपयोग कर रहे हैं सिर्फ एक उठाएँ त्रुटि अगर एक फ्लोट मूल्य में प्रवेश किया है, क्योंकि int शुरू में की आवश्यकता है के सभी तत्वों के लिए इनपुट एक नंबर हो सकता है, और . एक नंबर नहीं है.

दूसरा, अपने और बयान. else है बस के रूप में छोड़ दिया else:है , और कोई तर्क लेता है या मापदंडों के बाद.

अब, कैसे अगर जाँच करने के लिए संख्या नहीं है पूरे? इस प्रयास करें:

while True:
    print("Enter a number between 1 and 10")
    number = float(input())
    if (number > 0) and (number < 10) and (round(number)==number):
        print("Thank you, the end.")
        break
    else:
        print("It has to be a whole number between 1 and 10.")
        print("Please try again:")

यह स्वीकार करता है एक फ्लोट मूल्य है, लेकिन केवल यह स्वीकार करता है अगर यह करने के लिए बराबर है एक पूरी संख्या है, इसलिए (round(number)==number).

आशा है कि आपके सवाल का जवाब.

2021-11-15 08:32:00
0

सबसे पहले, आप उपयोग नहीं कर सकते हैं एक हालत में एक else बयान. इसके अलावा, आप की जरूरत का उपयोग करने के लिए or ऑपरेटर के बजाय and अगर एक स्थिति स्वीकार्य है ।
तो, अपने कोड की जरूरत है होना करने के लिए इस तरह

while True:
    print("Enter a number between 1 and 10")
    number = int(input())
    if (number > 0) and (number < 10):
        print("Thank you, the end.")
        break
    elif number < 0 or number >10:
        print("It has to be a whole number between 1 and 10.")
        print("Please try again:")
2021-11-15 08:32:15
0

धन्यवाद करने के लिए ack (ऊपर) के लिए ओर इशारा करते हुए मुझे करने के लिए एक उपयोगी लिंक है । का अध्ययन करके एक और धागा, मैं समाधान मिल गया. यह नहीं हो सकता है, सही कोड है, लेकिन यह 100% काम करता है:

while True:
    try:
        print("Enter a number between 1 and 10")
        number = float(input())
        if (number > 0) and (number < 10) and (round(number)==number):
            print("Thank you, the end.")
            break
        else:
            print("\n")
            print("It has to be a whole number between 1 and 10.")
            print("Please try again:")
            print("\n")
            continue
    except ValueError:
        print("It has to be a whole number between 1 and 10.")
        print("Please try again:")
        print("\n")
2021-11-16 06:21:03

अन्य भाषाओं में

यह पृष्ठ अन्य भाषाओं में है

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................

इस श्रेणी में लोकप्रिय

लोकप्रिय सवाल इस श्रेणी में