Python에서 입력 유효성 검사 실행

Vaibhhav Khetarpal 2023년1월30일
  1. try...except 문을 사용하여 Python에서 사용자 입력이 유효한지 확인
  2. isdigit() 함수를 사용하여 Python에서 사용자 입력이 유효한지 확인
Python에서 입력 유효성 검사 실행

입력 유효성 검사는 input() 함수에서 사용자가 제공한 입력이 주어진 경우 또는 시나리오에서 유효하고 수용 가능한지 확인하는 프로세스로 정의할 수 있습니다.

이 기사에서는 사용자 입력이 Python에서 유효한지 확인하는 방법을 배웁니다.

try...except 문을 사용하여 Python에서 사용자 입력이 유효한지 확인

try...except 문은 Python에서 예외 처리를 위해 사용됩니다. try...except 문은 모두 다른 용도로 사용되는 세 개의 블록으로 나뉩니다.

  • try 블록에는 오류에 대해 테스트할 코드 클러스터가 포함됩니다.
  • except 블록은 예외를 추가하고 코드의 오류를 처리하는 데 사용됩니다.
  • finally 블록에는 실행해야 하는 명령문이 포함되어 있습니다. tryexcept 블록에서는 무시됩니다.

Python의 입력 유효성 검사를 설명하기 위해 Python에 내장된 input() 함수를 사용하여 사용자에게 입력을 요청하는 프로그램을 살펴보겠습니다.

다음 코드는 try...except 문을 구현하여 사용자 입력이 Python에서 유효한지 확인합니다.

while True:
    try:
        dage = int(input("Enter your age: "))
    except ValueError:
        print("This is an unaccepted response, enter a valid value")
        continue
    else:
        break
if dage >= 21:
    print("You're the legal age to drink in India")
else:
    print("You're not the legal age to drink in India")

출력:

Enter your age: eight
This is an unaccepted response, enter a valid value
Enter your age: 8
You're not the legal age to drink in India

위의 코드에서 try 블록은 입력 기능을 포함하며 사용자가 입력할 값이 int여야 하는 매개변수를 설정합니다. 그런 다음 except 블록이 오류를 처리합니다. Python을 사용하면 코드 덩어리에서 원하는 만큼 except 블록을 정의할 수 있습니다.

출력은 int 값 대신 다른 값이 입력될 때 except 블록의 오류 메시지를 표시합니다. 프로그램의 후반부는 쉽고 if-else 문을 사용하여 사람이 법적 음주 연령인지 여부를 확인합니다.

isdigit() 함수를 사용하여 Python에서 사용자 입력이 유효한지 확인

isdigit() 함수는 입력에 제공된 값이 숫자(0-9)인지 여부를 확인하는 데 사용할 수 있습니다. 문자열에 숫자 정수 값만 포함된 경우 True 값을 반환합니다. 부동 소수점 숫자는 고려하지 않습니다.

다음 코드는 isdigit() 함수를 사용하여 사용자 입력이 Python에서 유효한지 확인하는 사용자 정의 함수를 실행합니다.

def check1(num):
    if num.strip().isdigit():
        print("The Input is Number")
    else:
        print("The Input is string")


x = input("Enter your age:")
check1(x)

출력:

Enter your age:18
The Input is Number

사용자 정의 함수는 수신된 사용자 입력이 숫자인지 문자열인지 확인하기 위해 생성됩니다.

Vaibhhav Khetarpal avatar Vaibhhav Khetarpal avatar

Vaibhhav is an IT professional who has a strong-hold in Python programming and various projects under his belt. He has an eagerness to discover new things and is a quick learner.

LinkedIn

관련 문장 - Python Input