강의로 돌아가기
문찬국

days를 괄호로 묶어야 되는 이유가 무엇일까요??

처음에는 days = christmas_2030 - datetime.datetime.now()로 했을 때는 안됐었는데 아래처럼

days = (christmas_2030 - datetime.datetime.now()).days로 했을 경우에는 제출이 되더라고요.

저렇게 괄호로 묶어야 하는 이유가 무엇인가요???

작성중인 코드―datetime2
1
2
3
4
5
6
7
8
9
import datetime

def days_until_christmas():
    christmas_2030 = datetime.datetime(2030, 12, 25)
    days = 
    return days


print("{}일".format(days_until_christmas()))
1 개의 답변
정두식_

python shell에서 실행해 보면 다음과 같이 나옵니다.

>>> import datetime
>>> christmas_2030 = datetime.datetime(2030, 12, 25)
>>> days = christmas_2030 - datetime.datetime.now()
>>> days
datetime.timedelta(4613, 51184, 900379)
>>> days.days
4613

위에서 보듯이 days의 type은 timedelta 클래스입니다.
christmas_2030 - datetime.datetime.now()는 timedelta이기 때문에 이걸 날짜로 바꿔 주기 위해서는 괄호로 묶은 다음 days 메소드를 호출해 줘야 합니다.

  • Brad
    아하! 감사합니다. Brad 2018.08.26 22:55
답변 쓰기
이 입력폼은 마크다운 문법을 지원합니다. 마크다운 가이드 를 참고하세요.