강의로 돌아가기
김대원

문제에 있는 코드가 이해가 안되요......ㅠㅠ

어찌 저찌 해서 문제를 풀었는데......
a, b = map(int, input().strip().split(' '))
이 부분은 무엇을 의미 하는 건가요?
무슨 소리 인지 이해가 잘 안되요...ㅠㅠ

작성중인 코드―solution.py
1
2
3
4
5
a, b = map(int, input().strip().split(' '))
x = int(a/b)
y = a%b

print('{} {}'.format(x,y))
1 개의 답변
Demi
  1. input()은 표준 입력을 받습니다. 이 문제에서는 5 3 을 리턴하겠지요?
    • => a, b = map(int, "5 3".strip().split(' '))
  2. strip()은 문자열을 처음과 끝에있는 공백문자를 제거합니다. input()에서 받은 값이 혹시 5 3 같이 공백이 있을 경우를 위해 전처리를 해주는 것이라 생각하시면 됩니다.
    • => a, b = map(int, "5 3".split(' ')) 3.split(' ')은 문자열을 공백을 기준으로 잘라줍니다. 5 3을 공백 기준으로 잘랐으니 [5, 3]을 리턴합니다.
    • => a, b = map(int, ["5", "3"])
  3. map(int, [5, 3])은 리스트의 원소에 int를 취해, 문자열을 정수로 변환해줍니다. map 에 대해서는 다음 강의를 참고해주세요.
    • => a, b = [5, 3]
  4. 마지막으로 남은 구문에서 unpacking을 적용해, a에는 5가 b에는 3이 할당됩니다.
답변 쓰기
이 입력폼은 마크다운 문법을 지원합니다. 마크다운 가이드 를 참고하세요.