二十又几 发表于 2021-9-27 21:44:21

课后作业7、8讲

动动手第 1 题 修改三元操作符

x, y, z = 6, 5, 4
if x < y:
    small = x
    if z < small:
      small = z
elif y < z:
    small = y
else:
    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 来判断吗?
       还有 答案里面的逻辑 和题目里面的逻辑 感觉对不上,比如:

if x < y:
    small = x
    if z < small:
      small = z    这几行我觉得 跟答案对不上 ,所以不是很理解。 感谢解答!

不能懒 发表于 2021-9-27 22:17:17

可以是 x > y and x > z 来判断吗?这是判断最大值,你的题目代码就是借助了一个中间值而已

2242253525 发表于 2021-9-28 16:35:37

x > y and x > z
这个是用来判断最大值的,当然不可以用。
当然你写的也没有问题啦,多了一个步骤而已,就像同样都是个台阶有人一步跨上去有人一节一节走上去一样的。
页: [1]
查看完整版本: 课后作业7、8讲