Skip to content

Instantly share code, notes, and snippets.

@azamsharp
Created September 18, 2020 18:51
Show Gist options
  • Save azamsharp/3927a171a1c966348e7ffddd1d0f4d57 to your computer and use it in GitHub Desktop.
Save azamsharp/3927a171a1c966348e7ffddd1d0f4d57 to your computer and use it in GitHub Desktop.
Pool Table
from datetime import datetime
class PoolTable:
def __init__(self, table_number):
self.table_number = table_number
self.start_time = None
self.end_time = None
self.time_played = None
def check_out(self):
self.start_time = datetime.now()
def check_in(self):
self.end_time = datetime.now()
# timedelta
self.time_played = self.end_time - self.start_time
def format_time(dt):
if dt is None:
return "N/A"
else:
return dt.strftime('%m-%d-%y %H:%M:%S')
def format_time_played(time_played):
output = f"{round(time_played.total_seconds()/60)} min, {round(time_played.total_seconds())} seconds"
return output
def display_table(table):
output = f"""
Table No: {table.table_number}
Start Time: {format_time(table.start_time)}
End Time: {format_time(table.end_time)}
Time Played: {format_time_played(table.time_played)}
"""
print(output)
pt = PoolTable(10)
pt.check_out()
pt.check_in()
display_table(pt)
#start_time = datetime.now()
# format time
#start_time_formatted = start_time.strftime('%m-%d-%y %H:%M:%S')
#print(start_time_formatted)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment