Re: 이해가 안 됩니다.
, 도장_ 관리자님이 작성int 함수는 문자열을 십진수 정수로 변환합니다. 즉, 십진수 정수로 변환할 수 있는 문자열이어야 합니다. .11처럼 실수로 판단해야 하는 문자열은 변환할 수 없습니다.
>>> a = float(input())
11.11
>>> a
11.11
>>>
그럴 땐 실수로 변환하는 float 함수를 사용해야 합니다.
실수를 정수로 변환할 때는 int 함수를 다시 사용하면 됩니다.
>>> int(a)
11
>>>
정수와 실수는 숫자를 처리하는 방식이 다릅니다. 정수에 실수를 처리하라고 하면 에러가 발생합니다.
>>> a = int(input())
11.11
Traceback (most recent call last):
File "<pyshell#0>", line 1, in <module>
a = int(input())
ValueError: invalid literal for int() with base 10: '11.11'
마지막 줄에 ValueError는 값이 틀렸다는 뜻이고, base 10은 십진수입니다. invalid literal for int()는 int 함수에 사용할 수 있는 올바른 리터럴을 사용하라는 것입니다. 11.11은 int 함수에 사용할 수 있는 리터럴이 아닙니다.