鱼C论坛

 找回密码
 立即注册
查看: 73|回复: 6

代码差错

[复制链接]
发表于 前天 11:01 | 显示全部楼层 |阅读模式

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

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

x
score=100
level=('B'if 0<=score<80 else
       'A'if 80<=score<100 else
       'S'if score=100 else'unknown')
请问这个代码错在哪里
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 前天 11:03 | 显示全部楼层
您的代码存在两个主要问题:

1. 条件表达式不完整:缺少 else 分支
2. 条件判断错误:使用固定值 0(永远为假)而非变量判断

修正后代码(按常见规则划分等级):
  1. score = 100
  2. level = 'A' if score >= 90 else 'B' if score >= 80 else 'C' if score >= 70 else 'D' if score >= 60 else 'E'
复制代码


代码说明:
1. 使用条件表达式链实现多级判断
2. 判断逻辑(可根据需求调整):
   - ≥90 → A
   - ≥80 → B
   - ≥70 → C
   - ≥60 → D
   - 其他 → E

执行结果:
level = 'A'(因为100≥90)

建议改进:
  1. score = 100
  2. if score >= 90:
  3.     level = 'A'
  4. elif score >= 80:
  5.     level = 'B'
  6. elif score >= 70:
  7.     level = 'C'
  8. elif score >= 60:
  9.     level = 'D'
  10. else:
  11.     level = 'E'
复制代码

这种写法更易读,推荐在实际开发中使用

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 前天 11:07 | 显示全部楼层
=是==
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 前天 11:08 | 显示全部楼层
=在Python是赋值
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 前天 15:44 | 显示全部楼层
if score=100 else'unknown' 这里的 score=100 是赋值,不是判断是否相等
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 昨天 17:38 | 显示全部楼层

之前改过了还是错啊
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 昨天 19:50 | 显示全部楼层
空调不太暖 发表于 2025-7-16 17:38
之前改过了还是错啊

print
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-7-17 02:28

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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