鱼C论坛

 找回密码
 立即注册
查看: 1512|回复: 7

[已解决]课后作业求解答

[复制链接]
发表于 2020-9-7 11:48:18 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
将以下代码修改为三元操作符实现:

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如何理解x<z.
最佳答案
2020-9-7 17:47:42
hanxiuc1 发表于 2020-9-7 13:07
我的想法是这样的、small = x if (x < y ) else (y if y < z else z),无法理解哪条语句来判断 x < z

当x最小时small直接等于x——>if (x < y and x < z)
当x不是最小时进入else,y if y < z——>此时x大于等于y或z,如果x大于等于y,满足y<z后,y便是最小,若x大于等于z,y还是最小。
当y大于等于z, else z ——> 此时前提条件是x大于等于y或z,z已经比y小,而x起码大于等于z,所以z是最小
这样好理解了吗
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-9-7 11:56:19 | 显示全部楼层
x < y and x < z ——>x比y小并且比z小
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-9-7 12:52:50 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-9-7 13:07:46 | 显示全部楼层
kylin121380 发表于 2020-9-7 11:56
x < y and x < z ——>x比y小并且比z小

我的想法是这样的、small = x if (x < y ) else (y if y < z else z),无法理解哪条语句来判断 x < z
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-9-7 13:18:24 | 显示全部楼层
Twilight6 发表于 2020-9-7 12:52
看看这个解析:https://fishc.com.cn/forum.php?mod=redirect&goto=findpost&ptid=172844&pid=4778235

感觉脑细胞进去了牛角了。我是无法理解x<z.
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-9-7 14:20:07 From FishC Mobile | 显示全部楼层
hanxiuc1 发表于 2020-9-7 13:18
感觉脑细胞进去了牛角了。我是无法理解x

好好捋一捋,把你之前的想法清空,然后再慢慢理解
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-9-7 15:12:00 | 显示全部楼层
#small = x if (x < y and x < z) else (y if y < z else z)

x, y, z = 6, 5, 4
if x < y and x<z:
    small = x
else:
    if y<z:
        small=y
    else:
        small=z
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-9-7 17:47:42 | 显示全部楼层    本楼为最佳答案   
hanxiuc1 发表于 2020-9-7 13:07
我的想法是这样的、small = x if (x < y ) else (y if y < z else z),无法理解哪条语句来判断 x < z

当x最小时small直接等于x——>if (x < y and x < z)
当x不是最小时进入else,y if y < z——>此时x大于等于y或z,如果x大于等于y,满足y<z后,y便是最小,若x大于等于z,y还是最小。
当y大于等于z, else z ——> 此时前提条件是x大于等于y或z,z已经比y小,而x起码大于等于z,所以z是最小
这样好理解了吗
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-18 20:13

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表