这是问题所在: 编写一个名为q1()的程序,提示用户输入的起点和终点 公里(km)和增量值。然后应该打印显示值的转换表 公里,英里(M)和英尺(英尺)。每个值都应在计算时显示。
这是我的代码:
print("This program prints a translation table between the Kilometers (km), Miles (M) and Feet (ft) scales.")
start_km = input("Enter the Starting Kilometers (km): ")
start_km = int(start_km)
end_km = input("Enter Ending Kilometers (km): " )
end_km = int(end_km)
increment = input("Increment value: ")
increment = int(increment)
km = start_km
M = km*(.621371)
ft = M*(5280)
print("km", " ", "M", " ", "ft")
print("==========================")
list = ['km', 'M', 'ft']
for i in range(start_km,end_km+1,increment):
km = start_km
M = km*(.621371)
ft = M*(5280)
print( km, " ", M, " ", ft)
我的问题是我得到一个列表,但它重复输入值而不是递增计算。我如何让它迭代?
答案 0 :(得分:2)
for i in range(start_km,end_km+1,increment)
不会更改start_km的值,因此您只是反复打印相同的值。 for循环更改i
的值,从start_km开始到end_km
结束,所以你应该这样做:
for km in range(start_km,end_km+1,increment):
M = km*(.621371)
ft = M*(5280)
print( km, " ", M, " ", ft)
自动增加km
,就像您想要的那样
答案 1 :(得分:0)
应该是,
km = i
内循环不是,
km = start_km