Python,我这是语法错误吗?

不知道为什么,可以正常运行。但是结果是错的。是某个地方要改吗?

img

因为你先定义最小的s_min=0,然后x,y,z,q都和s_min去对比,可没有一个比s_min小,自然s_min等于初值0
修改

x=float(input())
y=float(input())
z=float(input())
q=float(input())
s_min=x # 任选一个为初值即可
if x<s_min:
    s_min=x
if y<s_min:
    s_min=y
if z<s_min:
    s_min=z
if q<s_min:
    s_min=q
print(s_min)

img

没有语法错误,是s_min的初值问题,因为s_min为0没有一个数小于0。找最小值的话s_min要初始化为x,y,z,q其中任意一个,或者初始化为一个很大的数。

img


将框中的s_min值初始化为任意一个参与比较的变量的值,就可以了。
如:s_min=x;或者s_min=y;等

如有帮助,还请帮忙点下采纳!感谢!