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 Timestamp Ordering

cant get the function to take multiple arguments and create a list

i cant the function to take in multiple arguments and create a list

timestamp.py
# If you need help, look up datetime.datetime.fromtimestamp()
# Also, remember that you *will not* know how many timestamps
# are coming in.
import datetime

def timestamp_oldest(*args):
  list1 = list(args)
  sorted_stamps = list1.sort()
  return sorted_stamps[0]

3 Answers

Anish Walawalkar
Anish Walawalkar
8,534 Points

Question: Create a function named timestamp_oldest that takes any number of POSIX timestamp arguments. Return the oldest one as a datetime object.

A few things:

  1. There is nothing wrong with your list creation statement. It works fine
  2. In python when you call the sort() function on a list, it doesn't return the sorted list, rather it sorts the list that you called the sort() function with. In your case it sorts "list1"
  3. In the question you are asked to return a datetime object not the timestamp.

this should fix your problem:

import datetime
def timestamp_oldest(*args):
  list1 = list(args)
  list1.sort()
  return datetime.datetime.fromtimestamp(list1[0])
'''

thank you Anish it worked

lindseyk
lindseyk
4,506 Points

I had this same problem with the list in this challenge, and I think I'm still a bit confused regarding the sort() function...

If I wanted to create a sorted version, it seems I could do something like: list_copy = list1[ : ] list_copy.sort()

Is this the only way? (Assuming list_copy = list1.sort() will never work?)

And does this only apply to lists, or all iterables?

Thanks!