Menlo 发表于 2024-3-17 11:15:58

新新手python问题-给鱼币

"""Score Game"""
score=input("your score:")
score=int(score)

counts=3

if counts>=0:

    if score < 60:
      print("D")

    if 60<=score<80:
      print("C")
   
    if 80<=score<90:
      print("B")

    if 90<=score<100:
      print("A")

    if score==100:
      prnit("S")

    if score>100:
    break

counts=counts-1

print("down")


不明白为啥这个代码没法运行,错误提示在counts>=0 和 break

sfqxx 发表于 2024-3-17 11:15:59

在Python中,break关键字只能在一个循环中使用,用来结束当前循环。在你的代码中,break 关键字出现在了 if 语句中,但并没有出现在任何循环中,因此会触发错误。

关于 counts>=0 ,应该没有错误。你可能是因为该条件没有包含在循环语句中,所以在程序执行完一次后无法再接着进行。

你应该需要以下代码:

counts = 3

while counts >= 0:

    score = input("your score:")
    score = int(score)

    if score < 60:
      print("D")
    elif 60 <= score < 80:
      print("C")
    elif 80 <= score < 90:
      print("B")
    elif 90 <= score < 100:
      print("A")
    elif score == 100:
      print("S")
    elif score > 100:
      break

    counts = counts - 1

print("down")

求最佳答案

FishC 发表于 2024-3-17 11:21:05

新手问题,给鱼币是什么意思呢?请提供更多的背景信息和问题细节,这样我才能更好地帮助你。另外,代码中缺少一些逻辑判断条件的完整性,接下来我将给出一个示例来演示如何根据分数输出不同的等级。

score = input("请输入您的分数:")
score = int(score)

if score >= 90:
    grade = "A"
elif score >= 80:
    grade = "B"
elif score >= 70:
    grade = "C"
elif score >= 60:
    grade = "D"
else:
    grade = "F"

print("您的等级是:", grade)

在上面的代码中,根据输入的分数,使用`if`和`elif`语句来判断分数所属的等级,并将对应的等级存储在变量`grade`中。最后,使用`print`函数输出对应的等级。注意,在这个例子中,我使用了更加明确的条件判断来确定等级,以保证只有一个等级被选中。你可以根据实际需要进行修改。如果还有其他问题,请提供更多细节。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。

歌者文明清理员 发表于 2024-3-17 11:28:52

if score>100后面的 break没有正确缩进,应该更进一层

sxh1224 发表于 2024-3-17 16:34:56

break和if不可以单独使用,如果你把if嵌套在循环结构里就可以

pythonlearner2 发表于 2024-3-17 19:08:16

你的问题因该是要输入3次分数,判断分数的等级,这是一个循环,而不是判断,
counts=counts-1应该在循环体的的内部,而你的counts=counts-1没有缩进。
break语句只能用于循环结构中。
并且在if score==100:的下一行print拼写错误。
正确代码因改为:
"""Score Game"""
score=input("your score:")
score=int(score)

counts=3

while counts>=0:

    if score < 60:
      print("D")

    if 60<=score<80:
      print("C")
   
    if 80<=score<90:
      print("B")

    if 90<=score<100:
      print("A")

    if score==100:
      print("S")

    if score>100:
    break

    counts=counts-1

print("down")
页: [1]
查看完整版本: 新新手python问题-给鱼币