The Magic of Time.... , Unix Epoch , datetime , Asking For A Date , Getting Date Input , Delta Force , If Statements With Dates
The Magic of Time....
On day 60, we're going to learn about time (not time travel). Sorry to disappoint.
This can be quite a complicated thing, because we humans don't have nice standardized time. Instead we have:
24 hour clocksAM and PMMonths of differing lengthsLeap yearsLeap secondsAnd all sorts of oddities in our temporal framework.
Unix Epoch
👉 Your computer (and all of the other ones) uses something called the Unix epoch to measure time.
It counts the amount of seconds elapsed since Jan 1st, 1970 (even when the power's off - there's a small battery on your motherboard that keeps this function running).
Then, it turns this into a meaningful format for you, you illogical human.
datetime
To use the Unix epoch, we first need to import the datetime library
import datetime
👉 Now I'm going to insert the date and assign it to a variable.
import datetimemyDate = datetime.date(year=2022, month=12, day= 7)print(myDate)# This code outputs '2022-12-07'
Asking For A Date
👉 Let's use datetime to automatically get today's date.
import datetimetoday = datetime.date.today()print(today)# This code outputs the current date from your computer's clock.
Getting Date Input
👉 The easiest way to do this is to ask the user for day, month, and year in separate values.
import datetimeday = int(input("Day: ")) # Get all input as numbers. We're not at text input for months yet.month = int(input("Month: "))year = int(input("Year: "))date = datetime.date(year, month, day)print(date)
Delta Force
A common task in programs is to work out the difference between two dates, for example to calculate someone's age.
To do this, we use a time delta.
Delta is a computer science term that means the difference between two things.
A time delta is a difference in time. The time delta between when you were born and now is increasing all the time as you age.
👉 Here's some code that calculates a time delta between today and two weeks today to see what the date will be in two weeks.
import datetime
today = datetime.date.today() # Today's date
difference = datetime.timedelta(days=14) # The difference I want
newDate = today + difference # Add today to the delta difference to see the date in 14 days time.
print(newDate)
If Statements With Dates
Provided you've formatted the date correctly, you can use the > == and < comparison operators just like you can with integers.
👉 I can use this to tell me if I should be on vacation or not!
import datetime
today = datetime.date.today() # Today's date
holiday = datetime.date(year = 2022, month = 10, day = 30) # The date of my holiday
if holiday > today: # If my holiday is in the future print("Coming soon")elif holiday < today: #If my holiday date has passed print("Hope you enjoyed it")else: # If my holiday date is today print("HOLIDAY TIME!")
Unix Epoch
👉 Your computer (and all of the other ones) uses something called the Unix epoch to measure time.
It counts the amount of seconds elapsed since Jan 1st, 1970 (even when the power's off - there's a small battery on your motherboard that keeps this function running).
Then, it turns this into a meaningful format for you, you illogical human.
datetime
To use the Unix epoch, we first need to import the datetime library
import datetime
👉 Now I'm going to insert the date and assign it to a variable.
import datetime
myDate = datetime.date(year=2022, month=12, day= 7)
print(myDate)
# This code outputs '2022-12-07'
Asking For A Date
👉 Let's use datetime to automatically get today's date.
import datetime
today = datetime.date.today()
print(today)
# This code outputs the current date from your computer's clock.
Getting Date Input
👉 The easiest way to do this is to ask the user for day, month, and year in separate values.
import datetime
day = int(input("Day: ")) # Get all input as numbers. We're not at text input for months yet.
month = int(input("Month: "))
year = int(input("Year: "))
date = datetime.date(year, month, day)
print(date)
Delta Force
A common task in programs is to work out the difference between two dates, for example to calculate someone's age.
To do this, we use a time delta.
Delta is a computer science term that means the difference between two things.
A time delta is a difference in time. The time delta between when you were born and now is increasing all the time as you age.
👉 Here's some code that calculates a time delta between today and two weeks today to see what the date will be in two weeks.
import datetime
today = datetime.date.today() # Today's date
difference = datetime.timedelta(days=14) # The difference I want
newDate = today + difference # Add today to the delta difference to see the date in 14 days time.
print(newDate)
If Statements With Dates
Provided you've formatted the date correctly, you can use the > == and < comparison operators just like you can with integers.
👉 I can use this to tell me if I should be on vacation or not!
import datetime
today = datetime.date.today() # Today's date
holiday = datetime.date(year = 2022, month = 10, day = 30) # The date of my holiday
if holiday > today: # If my holiday is in the future
print("Coming soon")
elif holiday < today: #If my holiday date has passed
print("Hope you enjoyed it")
else: # If my holiday date is today
print("HOLIDAY TIME!")
Comments
Post a Comment