apenas le acabo de dar click al video, voy a intentar a hacer eso y luego ver como le hiciste tú :D Edit: ya termine, el código lo hice así: def calculate_time(time_str: str, duration: int) -> str: try: hour = int(time_str[:len(time_str) - 6]) minute = int(time_str[(len(time_str) - 6) + 1:4]) day_time = time_str[(len(time_str) - 6) + 4:8].upper() start = (hour * 60) + minute final_time = start + duration if final_time >= 720: day_time = "PM" if day_time == "AM" else "AM" final_time %= 720 final_hour = final_time // 60 final_minute = final_time % 60 final_time_str = f"{final_hour:02d}:{final_minute:02d} {day_time}" except ValueError: return "Error: Invalid time format!" except Exception as e: return f"Error: {str(e)}" return final_time_str time = input("Hora de inicio (ejemplo del formato: 8:32 AM): ") duration_hour = int(input("Duración del evento en horas (0 si dura menos de 1 hora): ")) duration_min = int(input("Duración del evento en minutos (0 si dura un número de horas exacto): ")) duration = (duration_hour * 60) + duration_min result = calculate_time(time_str=time, duration=duration) print(f" Hora a la que terminará el evento: {result}") ¿Cómo me quedo? :D
apenas le acabo de dar click al video, voy a intentar a hacer eso y luego ver como le hiciste tú :D
Edit: ya termine, el código lo hice así:
def calculate_time(time_str: str, duration: int) -> str:
try:
hour = int(time_str[:len(time_str) - 6])
minute = int(time_str[(len(time_str) - 6) + 1:4])
day_time = time_str[(len(time_str) - 6) + 4:8].upper()
start = (hour * 60) + minute
final_time = start + duration
if final_time >= 720:
day_time = "PM" if day_time == "AM" else "AM"
final_time %= 720
final_hour = final_time // 60
final_minute = final_time % 60
final_time_str = f"{final_hour:02d}:{final_minute:02d} {day_time}"
except ValueError:
return "Error: Invalid time format!"
except Exception as e:
return f"Error: {str(e)}"
return final_time_str
time = input("Hora de inicio (ejemplo del formato: 8:32 AM): ")
duration_hour = int(input("Duración del evento en horas (0 si dura menos de 1 hora): "))
duration_min = int(input("Duración del evento en minutos (0 si dura un número de horas exacto): "))
duration = (duration_hour * 60) + duration_min
result = calculate_time(time_str=time, duration=duration)
print(f"
Hora a la que terminará el evento: {result}")
¿Cómo me quedo? :D