Python I';I’我想找出每100米跑的平均速度、最小速度和最大速度

Python I';I’我想找出每100米跑的平均速度、最小速度和最大速度,python,Python,我已经编写了以下代码来输入距离、速度和时间,并返回每100米的平均、最小和最大速度。代码运行一次,在第二次运行时,我得到底部显示的错误 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)

我已经编写了以下代码来输入距离、速度和时间,并返回每100米的平均、最小和最大速度。代码运行一次,在第二次运行时,我得到底部显示的错误

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
错误:

回溯(最近一次调用上次):文件 “C:/Users/Mahe.000/PycharmProjects/serialgraph/venv/test.py”,第21行, 在里面 maxi=max(sparray)TypeError:“int”对象不可调用


您已经声明/正在代码中使用max和min变量。它们覆盖最大值和最小值函数

这里

当您调用
max()
python试图将您的调用应用于int变量时,您会得到您报告的错误

解决方案:为
max
min
变量使用不同的名称

我注意到在代码中没有使用
max
min
变量,除非将它们初始化为
0

在这种情况下,只需删除这部分代码:

max=0
min=0

您已经声明/正在代码中使用max和min变量。它们覆盖最大值和最小值函数

这里

当您调用
max()
python试图将您的调用应用于int变量时,您会得到您报告的错误

解决方案:为
max
min
变量使用不同的名称

我注意到在代码中没有使用
max
min
变量,除非将它们初始化为
0

在这种情况下,只需删除这部分代码:

max=0
min=0

在循环结束时,您将用
0
覆盖
max
min
函数。为什么每次都初始化max=0和min=0,我认为这并不需要,如果您希望在sparray中获得最大值,只需调用max(sparray)在循环结束时,您将使用
0
覆盖
max
min
函数。为什么每次都初始化max=0和min=0,我想这并不需要,如果您想在sparray中获得最大值,只需简单地调用max(sparray)即可。非常感谢您的帮助,即使这很愚蠢。谢谢你。@dkr很高兴我帮助了你:)非常感谢你的帮助,即使这很愚蠢。谢谢。@dkr很高兴我帮了你:)