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) Dates and Times Far Away

Nina Kozlova
Nina Kozlova
11,602 Points

local variable 'datetime' referenced before assignment

I can't figure out it can be referenced BEFORE assignment if I am assigning it right as the function far_away is declared.

far_away.py
import datetime
def far_away(timedelta):
  datetime = datetime.datetime.now() + datetime.timedelta()
  return datetime

2 Answers

Steven Parker
Steven Parker
229,732 Points

I can understand the confusion. Take a look at the comments below:

  datetime = datetime.datetime.now() + datetime.timedelta()
#            ^^^^^^^^^                 ^^^^^^^^^
#            THESE are the references before the assignment

The system thinks you are trying to assign your variable from itself. You should pick variable names that are unlike the objects your are importing. Also, the argument to your function should be added directly and not used as a method.

Hopefully these hints will get you going without an outright spoiler. Add a comment if you still have trouble.

Nina Kozlova
Nina Kozlova
11,602 Points

Yeah, thank you. I figured it out the moment I sent the question.