x, y, z = 6, 5, 4 【x=6,y=5,z=4】
if x < y: 【如果x<y时】
small = x 【small就是x】
if z < small: 【再进行比较z<small,因为刚才small赋值给x,所以这里是z<x 】
small = z 【把small赋值给z】
elif y < z: 【情况y<z时】
small = y 【把small赋值给y】
else: 【另外情况时】
small = z 【把small赋值给z】
small = x if (x < y and x < z) else (y if y < z else z)
三元操作符,意思其实就是上面一段代码,只是缩成一句话,
如果 (x < y and x < z)情况发生时,把small赋值给x,
情况 (x < y and x < z)不发生,但是 y < z 情况发生,把small赋值给y,
【
(x < y and x < z)不发生时,会产生三种情况,(x>y and x > z),(x < y and x >z),(x> y and x < z)
(x>y and x > z) 用 y < z进行判断:根据情况小的数是z和y,用 y < z进行判断用成立的话,small赋值给y
(x < y and x >z) 用 y < z进行判断:根据情况z<x<y,用 y < z进行判断,不成立,这个就是下面说的都不成立的情况
(x> y and x < z) 用 y < z进行判断:根据情况 y<x<z,用 y < z进行判断用成立的话,small赋值给y
】
当 (x < y and x < z)不发生,y < z 情况也不发生,,把small赋值给z,
其实没有什么x<z,这个只是三个数字进行两两比较,肯定会先出来两个数字而以。