[Programming Language]/[Python]

[Python] :: 데이터 입력 받기 - input( ) 함수

Semincolon 2023. 3. 31. 02:22

◎ input(  ) 함수

  실무에서 프로그램을 만들 때는 명령 프롬프트에 글자를 입력하고 그 입력을 읽어 활용하는 경우가 드물지만, 프로그램을 공부하는 과정에서는 사용자로부터 입력을 받아 여러 가지 프로그램을 만들어 보는 것이 좋다. 파이썬에서 입력을 받으려면 input( ) 함수를 사용한다.

input("당신의 이름은?> ")

  위 코드를 실행시키면 사용자의 입력이 완료될 때까지 커서가 깜빡이며 프로그램의 실행이 일시중지된다. input( ) 함수를 사용하여 입력받은 데이터를 변수에 저장하고 이를 print( ) 함수를 통해 확인해보자.

a = input("당신의 이름은?> ")
print(a)

  이렇게 input( ) 함수를 통해 입력받은 값이 변수 a에 올바르게 저장되는 것을 확인할 수 있다. 파이썬에서는 C언어와 달리 변수에 대한 자료형을 별도로 지정하지 않는다. 그렇다면 숫자를 입력받은 경우에는 숫자형으로 처리될까 아니면 문자형으로 처리될까? 이를 확인해보자.

a = input("첫번째 숫자> ")
b = input("두번째 숫자> ")
print(a+b)

  우리는 100+200=300이라는 것을 알고 있지만 출력 결과는 100200이다. 파이썬에서 문자열의 + 연산은 문자열을 합치는 기능을 수행하므로 100+200=100200이 되었다는 것은 입력받은 값인 100과 200이 문자열로 처리되었다는 사실을 의미한다. 이는 자료형을 보여주는 type( ) 함수를 통해 확인 가능하다.

  따라서 input( ) 함수를 통해 값을 입력받으면 이는 문자열로 처리된다는 것을 알 수 있다. 만약 숫자를 입력받고 해당 값에 대해 숫자형 연산을 적용하고 싶다면 타입 캐스팅을 적용하면 된다.

  • int( ) 함수 : 문자열을 int 자료형(=정수형)으로 변환.
  • float( ) 함수 : 문자열을 float 자료형(=실수형)으로 변환.
  • str( ) 함수 : 다른 자료형의 값을 문자열로 변환.

  이를 사용하여 위의 a+b 연산을 수행하는 코드를 다시 작성하면 아래와 같다.

a = int(input("첫번째 숫자> "))
b = int(input("두번째 숫자> "))
print(a+b)