Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

Python Dates and Times in Python (2014) Let's Build a Timed Quiz App Simple Time Machine

datetime

anyone to point where am getting it wrong

time_machine.py
import datetime

starter = datetime.datetime(2015, 10, 21, 16, 29)

def delorean(integer):
  #starter.hour must be the difference of the first starter.hour and integer
  #there is no negative time there for integer must be greater than starter.hour and less than or ==23
  if integer > starter.hour:
    return starter.replace(hour = integer - starter.hour)
  elif integer < starter.hour:
    return starter.replace(hour = starter.hour - integer)
  else:
    return starter

1 Answer

Kenneth Love
STAFF
Kenneth Love
Treehouse Guest Teacher

So what if your starter hour is 22 (10 pm), and integer comes in as 5. Your code turns the hour into 27, which...well, doesn't exist. Since you're wanting to move backwards and forwards through time, you need to use timedelta() and not just replace hours or other units.