본문 바로가기
programming/Python

파이썬 문자열 키보드 입력하기 using python keyboard input

by 개코 - 개발과 코딩 2021. 12. 21.

파이썬에서 키보드로 입력을 받기 위해 input() 함수를 사용한다. 사용자가 값을 입력하여 원하는 결과를 얻기 위함의 목적이 크다. 사용자 입력은 다양하다. 어떤 입력을 할 수 있는지 제대로 입력하는지 유도할 필요도 있지만, 사용자가 원하는 결과를 얻기 위해 먼저 입력을 할 수 있도록 하는 것이 목적이다.

파이썬 문자열 키보드 입력하기
using python keyboard input

프로그램을 만들다보면 사용자에게 메세지를 주는 부분도 있지만 사용자 입력을 받도록 할 수도 있다.

파이썬에서 사용자의 입력을 받을 수 있는 키워드는 input 함수이다.

input 함수를 이용하면 사용자의 입력을 받아 여러가지 처리를 할 수 있다.

사용법은 간단하다.

로직에 따라 어떤 입력을 받을지는 개발자의 몫이다.

사용법

파이썬에서 사용자로 하여금 문자열을 입력받을 때는 input 함수를 사용한다.

input() 함수를 사용하면 프로그램은 잠시 중단하고 사용자가 문자열 입력 후 엔터키를 치면 다음으로 넘어간다.

vVal = input(문자열)

샘플코드

input() 함수를 사용하여 파이썬에서 사용자 입력을 받은 후 문자열을 화면에 출력해 본다.

사용법은 위에 작성한 대로 하며 변수를 그대로 출력해 주면 된다.

print("----------")

vRetVal = input("아무거나 입력해 주세요. : ")
print("입력한 문자열 : " + vRetVal)
    
print("----------")

결과 화면을 보자.

키보드로 입력한 문자열이 화면에 그대로 출력된다.

구구단

조금 재미가 붙었다면 구구단을 만들어 본다.

하나의 수를 입력하고 1부터 9까지 곱해주면 된다.

반복문과 같이 사용하면 된다.

print("----------")

vRetVal = input("아무거나 입력해 주세요. : ")

vText = f"구구단 {vRetVal}단을 계산합니다."
print(vText)
    
for lpEach in range(1, 10, 1) :
    
    vlpRet = int(vRetVal) * lpEach
    vlpText = f"{vRetVal} * {lpEach} = {vlpRet}"
    print(vlpText)
    
print("----------")

결과화면을 보자.

입력한 수에 따라 1부터 9까지 곱하면서 구구단을 보여주고 있다.

사칙연산

조금 더 응용해보자.

두 수를 입력받아 사칙연산을 해보고 나머지까지 표현해 본다.

여기서는 예외처리인 try except 까지 사용한다.

0 으로 나누어지는 것은 수학에서 예외이기도 하다.

print("----------")

vRtrValFst = 0
vRtrValSnd = 0

try :
    
    vRtrValFst = input("첫번째 숫자를 입력하세요. : ")
    vRtrValSnd = input("두번째 숫자를 입력하세요. : ")

    vVal = int(vRtrValFst) + int(vRtrValSnd)
    vText = f"덧셈 : {vRtrValFst} + {vRtrValSnd} = {vVal}"
    print(vText)
    
    vVal = int(vRtrValFst) - int(vRtrValSnd)
    vText = f"뺄셈 : {vRtrValFst} - {vRtrValSnd} = {vVal}"
    print(vText)
    
    vVal = int(vRtrValFst) * int(vRtrValSnd)
    vText = f"곱셈 : {vRtrValFst} * {vRtrValSnd} = {vVal}"
    print(vText)
    
    vVal = int(vRtrValFst) / int(vRtrValSnd)
    vText = f"나눗셈 : {vRtrValFst} / {vRtrValSnd} = {vVal}"
    print(vText)
    
    vVal = int(vRtrValFst) % int(vRtrValSnd)
    vText = f"나머지 : {vRtrValFst} % {vRtrValSnd} = {vVal}"
    print(vText)
    
except :
    vText = f"예외발생 : 입력한 숫자를 확인해 주세요. 첫번째 {vRtrValFst}, 두번째 {vRtrValSnd}"
    print(vText)
else :
    print("완료되었습니다.")
finally :
    print("종료합니다.")

print("----------")

결과화면을 보자.

정상적으로 출력되었을 때와 예외가 발생한 부분을 같이 보여주고 있다.

0으로 나누었기 떄문이다.

예외발생의 경우 정상적으로 동작한 곳까지는 화면에 결과를 출력하는 것을 알 수 있다.

예외가 발생하여도 어디서 문제가 발생했는지 찾을 수 있다는 것이기도 하다.

반응형

댓글