Why am I getting a "AttributeError: 'builtin_function_or_method' object has no attribute 'lapcount'" when asking for user input?
Why am I getting a "AttributeError: 'builtin_function_or_method' object has no attribute 'lapcount'" when asking for user input?
制作一个单圈计时器,需要提示单圈时间,直到用户输入单圈时间 x。用户输入需要是一个浮点数,因为它可能包含包含小数点的时间。我知道输入只能传递 1 个参数,但我想不出另一种方法来做到这一点。
尝试同时使用 for 和 while 循环。
#Enhanced laptimer w/ list
laps=[]
lapcount=0
while True:
lapcount=+1
result=float(input("Enter lap time for lap {}. (push x to end): ", format.lapcount))
if result == x:
break
laps.append(result)
laps.sort()
print("Fastest lap was", laps[0])
print("Slowest lap was", laps[-1])
print("Average lap was", sum(laps)/len(laps))
我希望输出如下所示:
输入单圈时间 1("x" 结束):23.4
输入圈速 2("x" 结束):25.1
输入单圈时间 3("x" 结束):27.3
输入圈速 4("x" 结束):22.0
输入单圈时间 5("x" 结束):x
最快圈速:22.0
最慢圈速:27.3
平均单圈时间:24.45
相反,我得到了这个异常:
result=input("Enter lap time for lap", lapcount, ". (push x to end): ")
TypeError:最多输入 1 个参数,得到 3 个
使用字符串格式:
result = float(input("Enter lap time for lap %s (push x to end): " % lapcount))
制作一个单圈计时器,需要提示单圈时间,直到用户输入单圈时间 x。用户输入需要是一个浮点数,因为它可能包含包含小数点的时间。我知道输入只能传递 1 个参数,但我想不出另一种方法来做到这一点。
尝试同时使用 for 和 while 循环。
#Enhanced laptimer w/ list
laps=[]
lapcount=0
while True:
lapcount=+1
result=float(input("Enter lap time for lap {}. (push x to end): ", format.lapcount))
if result == x:
break
laps.append(result)
laps.sort()
print("Fastest lap was", laps[0])
print("Slowest lap was", laps[-1])
print("Average lap was", sum(laps)/len(laps))
我希望输出如下所示: 输入单圈时间 1("x" 结束):23.4 输入圈速 2("x" 结束):25.1 输入单圈时间 3("x" 结束):27.3 输入圈速 4("x" 结束):22.0 输入单圈时间 5("x" 结束):x 最快圈速:22.0 最慢圈速:27.3 平均单圈时间:24.45
相反,我得到了这个异常: result=input("Enter lap time for lap", lapcount, ". (push x to end): ") TypeError:最多输入 1 个参数,得到 3 个
使用字符串格式:
result = float(input("Enter lap time for lap %s (push x to end): " % lapcount))