본문 바로가기
[ Python ]/- 파이썬 문법공부

파이썬 8장(input, 여러 개 입력, 입력, 출력)

by MRG 2020. 7. 13.
728x90
반응형
728x90

▣ 안녕하세요 ^^
저번장 과제는 다 해보셨나요?
다 하셨죠?? 잘하고 계십니다.
코딩을 사고해서 작성하시고 읽고 해석하고 고치시는 훈련을 계속하신다면
더 깊이 있는 코딩을 하실 수 있을 거라 생각합니다.
그러니 포기하지 마세요~~


▣ 그럼 오늘은 입력 함수 
input을 공부해보겠습니다.

 

▣ 먼저 입력을 받아오려면 input() 함수를 사용해야 합니다.
첫 번째 변수를 먼저 선언하고 input() 함수를 사용해줍니다. 
입력을 받을 값을 num1에 넣기 위해 = 대입 연산자를 넣었습니다.
그리고 print() 함수로 입력한 값을 바로 출력하기 위해서 num1를 넣었습니다.
그리고 Run을 해서 확인해보면,
250이라고 입력을 하면 바로 250이 출력되는 걸 확인할 수 있습니다.

 

▣ 그리고 input함수 괄호 안에 "숫자를 입력해주세요 : "와 같은 문자를 넣어주면
이렇게 안내문구가 출력되는 걸 확인할 수 있습니다.
그럼 사용자가 이 안내 문구를 보고 그에 맞는 입력을 주게 됩니다.



▣ 직접 한번 input함수를 사용해서 다른 값을 입력받아 보세요.
그럼 이걸 활용하여 우리가 입력을 받아온 숫자 값으로 연산을 할 수 있겠죠?
한번 응용해보겠습니다.

 


▣ 반복문을 이용해서 2를 입력하면 2단에 값이 나오고 3단을 입력하면 3단에 값이 나오도록
for문으로 코딩을 해보았습니다.
그리고 출력을 하면 이상하게 2가 곱해진 값이 아니라 
2에 숫자들이 여러 개 출력되는 걸 확인할 수 있습니다.
이건 이 코드와 동일합니다.

 

▣ 문자에 숫자를 곱하면 
이렇게 그 곱한 숫자만큼 문자가 출력되는 걸 확인할 수 있습니다.
우리가 위에서 했던 결과와 동일합니다.
그럼 우리가 여기서 생각해볼 수 있는 게
input으로 받아오는 값은 문자로 받아온다라는 결론이 나옵니다.
그럼 어떻게 해야 할까요?
input에서 받아온 값을 숫자로 형 변환하면 됩니다.

 

 

▣ 정수형인 int 형으로 바꾸고 싶다면 이렇게 int()로 바꾼 값을 괄호 안에 넣으면 됩니다. 
그럼 이렇게 입력을 받아온 값이 문자형이 아닌 int형 정수형으로 받아와 이렇게 
곱해지는 걸 확인할 수 있습니다.
그럼 아까 곱하기 코드도 이렇게 고치면 되겠죠?

 

 

▣ int로 형 변환해서 수정을 하면 구구단이 나오는 걸 확인할 수 있습니다.



▣ 자 여기서 미션 과제
변수 하나로 입력을 받아서 2를 입력하면 2단이 출력됩니다.
하지만 무조건 9까지 곱해지죠?
그 범위를 우리가 입력을 받아와서 그 범위만큼 곱해지게 만들어보세요.
예를 들어 처음 input()으로 받은 값은 구구단 단수를 입력을 받고
input() 함수를 또 사용하여 곱해지는 값을 입력받아서 몇까지 곱할지를 정하는 숫자를 받아옵니다.
그래서 내가 정한 구구단 단으로 몇까지 곱해질지에 범위를 정해서 출력해보는걸 한번 해보시기 바랍니다.
과제는 꼭 해보셔야 합니다 ^^
응용을 해야 실무에서 활용할 수 있습니다.

 


▣ 이렇게 float(소수형)으로도 형 변환을 하여서 출력할 수 있습니다.
자 그럼 여기까지 오셨다면 이런 질문을 하실 수 있을 겁니다.
여러 개를 한꺼번에 입력을 받아올 수 없을까라는 질문이요. 
제 대답은 가능하다입니다.

 

 

▣ 이렇게 input함수 끝에. split() 함수를 넣어주면 됩니다. 
이 함수는 나누어서 입력을 받는다라고 생각하시면 좋을 거 같습니다. 
그리고 이렇게 앞에 입력값을 대입할 변수 두 개를 콤바로 구분해서
선언하시면 됩니다. 
코드를 완성하고 Run을 해보면 한 개를 입력하고 스페이를 띄고 또 한 개에 값을 입력하고 엔터를 누르면
이렇게 두 개에 값이 출력되는 걸 확인할 수 있습니다.



▣ 그런데 여기서 중요한 건 split() 안에 아무것도 넣지 않은 건 스페이스 띄어쓰기로 구분하겠다는 의미입니다.
그래서 띄어쓰기를 하지 않으면 오류가 나오게 됩니다.

 

▣ 그래서 이렇게 split값 안에 ', ' 콤마로 구분해주겠다고 넣으면 이렇게 콤마로 구분해서 
값을 입력받을 수도 있습니다.



▣ 그런데 숫자를 받으려고 하는데 int로 형 변환을 하면 안 됩니다.
이렇게 나눠서 입력을 받을 때에는 다르게 형 변환을 해야 합니다. 

 

▣ 바로 map함수를 사용하셔서 int로 모두 다 형 변환하시고 
입력을 받아 곱하면 이렇게 값이 제대로 나오는 걸 확인할 수 있습니다.
map() 함수는 문자열, 리스트에 관련된 거라 리스트를 다룰 때 자세히 다루도록 하겠습니다.
우선 이렇게 형 변환이 가능하다라고만 이해해주세요.
자 이번에도 응용을 해보겠습니다. 

 

▣ 조건문과 반복문을 모두 이용하여 
입력받은 값으로 출력하고 조건을 검사하여 값이 출력하고 반복하는
코딩을 만들어보았습니다.
제가 해석해드리지는 않겠습니다.
이 부분도 과제로 해주시고 해석해보시고,
다르게도 만들어보세요.


▣ 오늘은 이렇게 input() 함수 입력 함수를 공부했습니다.
이제 파이썬으로 입력하고 출력하는걸 모두 할 수 있게 되었네요.
아주 잘하고 계십니다.
꼭 과제해주시고 읽고 해석하는 것 훈련 잊지 마세요.
어려우신 게 있으시면 댓글 남겨주세요.
그럼 다음장에서 뵙겠습니다. 


▣ 포기하지 마세요!!! 저도 했습니다!!! 파이팅!!!

728x90
반응형

댓글