Re: Unit12 심사문제 문의
, 도장_ 관리자님이 작성심사문제의 예시 입력은
health health_regen mana mana_regen
575.6 1.7 338.8 1.63
입니다.
예시에서는 4개의 입력을 처리하고 있고,
문의한 코드는 3개의 입력을 가정하고 있습니다.
따라서 예시 입력에 대해서 다음과 같은 오류가 발생합니다.
Traceback (most recent call last): File "main.py", line 1, in <module> a, b, c = input().split() ValueError: too many values to unpack (expected 3)ValueError에 too many values to unpack이죠.
코드는 expected 3, 3개의 값을 기대하고 있는데 입력은 4개라는 뜻입니다.
문제를 잘 읽어보면 입력의 개수를 정하지 않았습니다.
표준 입력으로 문자열 여러 개와 숫자(실수) 여러 개가 두 줄로 입력됩니다.
입력되는 데이터 쌍이 4개, 5개, 6개, 7개... 개수가 정해지지 않았습니다.
유동적인 입력 개수에 대해서 동작해야 합니다.
유동적인 개수 입력 처리는 간단합니다.
a = input().split()
a는 리스트로 데이터를 담게 됩니다. 입력 개수가 몇 개이든 split() 함수로 나누게 됩니다.
>>> a = input().split()
a b c d e f g h
>>> a
['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h']
>>>
이해했을 것이라고 믿습니다.