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 trialAndrew McLane
3,385 Pointstimestamp.py
So I'm trying to use make a function that takes an unknown number of float arguments.
My first thought was to use *args, but when I try to run the function it says that the function expected integers but got floats? Any help is appreciated.
# 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):
sorted_list = []
for num in args:
sorted_list.append(num)
sorted_list.sort()
return datetime.datetime(max(sorted_list))
2 Answers
Logan R
22,989 PointsHey!
If you read the first comment, "# If you need help, look up datetime.datetime.fromtimestamp()
", it's trying to give you a hint that to get the datetime from a timestamp, you should use the fromtimestamp function.
An example:
datetime.datetime.fromtimestamp(a_posix_timestamp_thats_a_float)
Also, as a sidenote: you are returning the biggest timestamp, which means that it's the most recent. It wants you to return the smallest. "Return the oldest one as a datetime object.
"
Mohammed Ismail
7,190 PointsHi Andrew,
Just correct your return statement as below:
return datetime.datetime.fromtimestamp(sorted_list[0])