【发布时间】:2020-02-28 15:04:35
【问题描述】:
我编写了以下代码来输入距离、速度和时间,并返回每 100m 覆盖的平均、最小和最大速度。该代码运行一次,在第二次运行时,我得到了底部显示的错误。
sparray=[]
lasttime=0
newtime=0
lastdist=0
newdist=0
i=1
while 1:
dist=float(input("distance"))
speed = float(input("speed"))
sparray.append(speed)
print(sparray)
time = float(input("time"))
if (dist >= 100 * i):
newtime = time
newdist = dist
kmtime = newtime - lasttime
kmdist = newdist - lastdist
avg = kmdist / kmtime
print("AVG: ", avg)
maxi = max(sparray)
mini = min(sparray)
print("MAX: ", maxi)
print("MIN: ", mini)
sparray = []
i = i + 1
lastdist = dist
lasttime = time
avg=0
max=0
min=0
错误:
Traceback(最近一次调用最后一次):文件 “C:/Users/Mahe.000/PycharmProjects/serialgraph/venv/test.py”,第 21 行, 在 maxi = max(sparray) TypeError: 'int' object is not callable
【问题讨论】:
-
在循环结束时,您将用
0覆盖max和min函数。 -
为什么每次都初始化 max=0 和 min=0,我认为不需要,如果你想要 sparray 中的最大值,只需调用 max(sparray)
标签: python