鱼C论坛

 找回密码
 立即注册
查看: 39|回复: 4

[作品展示] 这是第二份作业了,还有点难度

[复制链接]
发表于 昨天 19:55 | 显示全部楼层 |阅读模式

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

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

x
  1. a = input("请输入一个数字:")
  2. b = input("请输入一个数字:")
  3. a = int(a)
  4. b = int(b)
  5. c = input("请输入一个运算符:")
  6. if c not in ["+" , "-" , "*" ,"/" ,"//" , "%" , "**"]:
  7.     print("运算符不认识")
  8. else :
  9.     if c == "+" :
  10.         print(a + b)
  11.     if c == "-" :
  12.         print(a - b)
  13.     if c == "*" :
  14.         print(a * b)
  15.     if c == "/" :
  16.         print(a / b)
  17.     if c == "//" :
  18.         print(a // b)
  19.     if c == "%" :
  20.         print(a % b)
  21.     if c == "**" :
  22.         print(a ** b)
复制代码

这是批改过后的作业了,现在Ai好智能,能帮我批改作业,这第6行就是Ai帮我批的,非常谢谢Ai。
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 昨天 19:56 | 显示全部楼层
你好!很高兴看到你的第二份作业,这是一个很好的开始!不过,我注意到代码中有一个小问题需要修正。

第6行:if c not in : 这里 in 后面缺少一个可迭代对象,比如一个包含所有支持运算符的列表。否则,Python会报语法错误。

修正后的第6行应该是:
  1. if c not in ["+", "-", "*", "/", "//", "%", "**"]:
复制代码


这样,程序就能正确检查运算符是否有效了。

另外,我还有一些建议让你的代码更高效:

  • else 部分,你使用了多个 if 语句。如果运算符匹配了其中一个,后续的 if 还会继续检查,这可能会影响效率。可以使用 elif 来改进:

    1.     if c == "+":
    2.         print(a + b)
    3.     elif c == "-":
    4.         print(a - b)
    5.     elif c == "*":
    6.         print(a * b)
    7.     elif c == "/":
    8.         print(a / b)
    9.     elif c == "//":
    10.         print(a // b)
    11.     elif c == "%":
    12.         print(a % b)
    13.     elif c == "**":
    14.         print(a ** b)
    复制代码

  • 考虑处理除零错误。当运算符是 ///% 时,如果 b 是0,程序会崩溃。你可以添加检查,例如:

    1.     elif c == "/":
    2.         if b != 0:
    3.             print(a / b)
    4.         else:
    5.             print("错误:除数不能为零")
    复制代码

    类似地处理 //%


保持学习,你的进步很快!如果还有其他问题,随时提问。加油!

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

使用道具 举报

 楼主| 发表于 昨天 20:01 | 显示全部楼层
FishC 发表于 2026-4-19 19:56
你好!很高兴看到你的第二份作业,这是一个很好的开始!不过,我注意到代码中有一个小问题需要修正。

第 ...

我只是一个新手,你说的太复杂了。等我有能力了再试试QVQ
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 昨天 20:01 | 显示全部楼层
王冯蕊 发表于 2026-04-19 20:01
FishC 发表于 2026-4-19 19:56
你好!很高兴看到你的 ...


你完全说对了,作为新手,我们一步一步来,先解决能让程序运行起来的关键问题。其他的优化建议等你觉得顺手了再尝试。

你当前代码最核心的问题就是第 6 行不完整,程序会报错。我们只修复这一点。

**需要修改的地方:**
将第 6 行:
  1. if c not in :
复制代码

修改为:
  1. if c not in ["+", "-", "*", "/", "//", "%", "**"]:
复制代码


**修改后的完整代码:**


  1. a = input("请输入一个数字:")
  2. b = input("请输入一个数字:")
  3. a = int(a)
  4. b = int(b)
  5. c = input("请输入一个运算符:")

  6. # 修改了这一行,加上了所有支持的运算符列表
  7. if c not in ["+", "-", "*", "/", "//", "%", "**"]:
  8.     print("运算符不认识")
  9. else:
  10.     if c == "+":
  11.         print(a + b)
  12.     if c == "-":
  13.         print(a - b)
  14.     if c == "*":
  15.         print(a * b)
  16.     if c == "/":
  17.         print(a / b)
  18.     if c == "//":
  19.         print(a // b)
  20.     if c == "%":
  21.         print(a % b)
  22.     if c == "**":
  23.         print(a ** b)
复制代码


**这样修改后,你的计算器程序就能正常运行了!**

你已经成功让程序接收输入、判断运算符并进行计算,这非常棒!对于新手来说,一次做太多改动反而会混乱。先让这个版本跑起来,熟悉它,这就是最大的进步。

等你觉得这个程序用得很习惯了,我们再聊聊怎么让它更高效、更安全。加油,你做得很好!

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

使用道具 举报

发表于 3 分钟前 | 显示全部楼层
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-4-20 00:06

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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