如何无限循环这个 Python 程序,并将浮点数小时转换为小时和分钟?
How can I loop this Python program indefinitely, and convert floating point hours into hours and minutes?
所以我需要制作一个油耗计算器,它还可以计算在特定行程中花费的时间。
我不知道如何让程序以 "hours:minutes" 格式告诉我花费的时间,而不仅仅是小时的浮点变量。
Time traveled: 1.6666666666666667 hours
应该
Time traveled: 1h:45min
此外,我不确定如何让程序无限重复问题并给出结果,直到关闭。
这是我的代码:
# Get L/100km used from the user
fuel = input("Enter car's L/100kmh:")
fuel = float(fuel)
# Get distance driven from the user
distance = input("Enter kilometers driven:")
distance = float(distance)
# Get speed used from the user
speed = input("Enter driving speed:")
speed = float(speed)
# Calculate and print the answer
time = distance / speed
fuel_burned = distance / 100 * fuel
print("Time traveled:", time,"hours")
print("Fuel burned:", fuel_burned,"liters")
您可以将它包装在一个 while 循环中。你的标题没有意义,因为这与 GUI(图形用户界面)无关
示例:
while True:
# Get L/100km used from the user
fuel = input("Enter car's L/100kmh:")
fuel = float(fuel)
# Get distance driven from the user
distance = input("Enter kilometers driven:")
distance = float(distance)
# Get speed used from the user
speed = input("Enter driving speed:")
speed = float(speed)
# Calculate and print the answer
time = distance / speed
fuel_burned = distance / 100 * fuel
print("Time traveled:", time,"hours")
print("Fuel burned:", fuel_burned,"liters")
此代码经过大量编辑以尽可能准确。我的解决方案假设您希望能够优雅地退出程序,而不是让它在系统关闭时终止,但如果不是这种情况,只需删除循环的最后一部分,从 again = ...
.[ 开始。 =13=]
while True:
# Get L/100km used from the user
fuel = input("Enter car's L/100kmh:")
fuel = float(fuel)
# Get distance driven from the user
distance = input("Enter kilometers driven:")
distance = float(distance)
# Get speed used from the user
speed = input("Enter driving speed:")
speed = float(speed)
# Calculate and print the answer
time = distance / speed
fuel_burned = distance / 100 * fuel
hours = int(time)
minutes_remainder = (time - hours) * 60
minutes = int(minutes_remainder)
print("Time traveled: ", hours,":",minutes)
print("Fuel burned: ", fuel_burned," liters")
again = input("Go again? (y/n)")
if again == "n":
break
Here 是在 C++ 中将十进制小时数转换为 hours:mins:seconds 的示例,我曾用它得出我给出的解决方案。
所以我需要制作一个油耗计算器,它还可以计算在特定行程中花费的时间。
我不知道如何让程序以 "hours:minutes" 格式告诉我花费的时间,而不仅仅是小时的浮点变量。
Time traveled: 1.6666666666666667 hours
应该
Time traveled: 1h:45min
此外,我不确定如何让程序无限重复问题并给出结果,直到关闭。
这是我的代码:
# Get L/100km used from the user
fuel = input("Enter car's L/100kmh:")
fuel = float(fuel)
# Get distance driven from the user
distance = input("Enter kilometers driven:")
distance = float(distance)
# Get speed used from the user
speed = input("Enter driving speed:")
speed = float(speed)
# Calculate and print the answer
time = distance / speed
fuel_burned = distance / 100 * fuel
print("Time traveled:", time,"hours")
print("Fuel burned:", fuel_burned,"liters")
您可以将它包装在一个 while 循环中。你的标题没有意义,因为这与 GUI(图形用户界面)无关
示例:
while True:
# Get L/100km used from the user
fuel = input("Enter car's L/100kmh:")
fuel = float(fuel)
# Get distance driven from the user
distance = input("Enter kilometers driven:")
distance = float(distance)
# Get speed used from the user
speed = input("Enter driving speed:")
speed = float(speed)
# Calculate and print the answer
time = distance / speed
fuel_burned = distance / 100 * fuel
print("Time traveled:", time,"hours")
print("Fuel burned:", fuel_burned,"liters")
此代码经过大量编辑以尽可能准确。我的解决方案假设您希望能够优雅地退出程序,而不是让它在系统关闭时终止,但如果不是这种情况,只需删除循环的最后一部分,从 again = ...
.[ 开始。 =13=]
while True:
# Get L/100km used from the user
fuel = input("Enter car's L/100kmh:")
fuel = float(fuel)
# Get distance driven from the user
distance = input("Enter kilometers driven:")
distance = float(distance)
# Get speed used from the user
speed = input("Enter driving speed:")
speed = float(speed)
# Calculate and print the answer
time = distance / speed
fuel_burned = distance / 100 * fuel
hours = int(time)
minutes_remainder = (time - hours) * 60
minutes = int(minutes_remainder)
print("Time traveled: ", hours,":",minutes)
print("Fuel burned: ", fuel_burned," liters")
again = input("Go again? (y/n)")
if again == "n":
break
Here 是在 C++ 中将十进制小时数转换为 hours:mins:seconds 的示例,我曾用它得出我给出的解决方案。