Python 입력 제어 루프

0

질문

Python 초보자는 여기에. 연습 사용자 입력을 제어합니다. 만들려고 하는 사용자 입력을 반복하기 시작하면 아무것도 하지만 전부 숫자 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:")

이지 float value,하지만 그것을 받은 경우 동일하수를 따라서, (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ý
..................................................................................................................