departure_day departure_time arrival_day arrival_time
1 00:00:00 3 01:00:00
1 10:00:00 1 02:00:00
6 15:00:00 1 06:00:00
我想有一个变量,它们之间有区别。 1是星期一,7是星期日。另外,有时像最后一种情况一样从6变为1。
我想将其最终转换为小时和几天。 到目前为止,我已经将它们也转换为DateTime变量,但目前我很挣扎。关于如何前进的任何提示?
Example output:
difference (in hours)
49
14
39
答案 0 :(得分:0)
请在下面找到此代码段:
def day(departure, arrival, dep_time, arr_time):
if departure<=arrival and dep_time<arr_time:
total_hours=abs(hours(dep_time,arr_time).hours)+ (arrival-
departure)*24
elif dep_time>arr_time and departure==arrival-1:
total_hours=24+(hours(dep_time,arr_time).hours)
elif dep_time<arr_time and departure!=arrival-1:
total_hours=abs(hours(dep_time,arr_time).hours)+ (7+arrival-
departure)*24
elif dep_time>arr_time and departure!=arrival-1:
total_hours=24+(hours(dep_time,arr_time).hours)+ (6+arrival-
departure)*24
return total_hours
def hours(dep_time,arr_time):
arr=datetime.strptime(arr_time, FMT)
dep=datetime.strptime(dep_time, FMT)
diff = relativedelta(arr, dep)
return diff
注意:我认为您的第二行不正确。请检查。