爱提问题的干脆面 2025-01-07 15:59 采纳率: 100%
浏览 7
已结题

python中的内置函数format

用python中的内置函数format出现了问题:
在pycharm中写下如下代码:

score=int(input("输入一个在0-100之间的数字:"))
grade="ABCDE"
num=0
if score>100 or score<0:
    print("输入错误!请重新输入!")
else:
    num=score//10
    if num<6 : num=5
print("分数是{0},等级是{1}".format(score,grade[9-num]))

但是运行的时候打印出来的还是分数是{0},等级是{1},显示不出format后面的东西,为啥?

  • 写回答

4条回答 默认 最新

  • 道友老李 JWE233286一种基于机器视觉的水表指针读数识别及修正的方法 专利发明者 2025-01-07 16:00
    关注
    让【道友老李】来帮你解答,本回答参考gpt编写,并整理提供,如果还有疑问可以点击头像关注私信或评论。
    如果答案让您满意,请采纳、关注,非常感谢!
    问题在于grade这个变量定义不正确,应该是一个字符串而不是一个列表。另外,在format中应该使用{}而不是[]来表示位置,并且在字符串中要转义{}符号。 正确的代码应该如下所示:
    score = int(input("输入一个在0-100之间的数字:"))
    if score > 100 or score < 0:
        print("输入错误!请重新输入!")
    else:
        num = score // 10
        if num < 6:
            num = 5
        grade = "ABCDE"
        print("分数是{},等级是{}".format(score, grade[9-num]))
    

    这样运行代码就可以正常显示出格式化后的字符串了,例如输入90,会输出:分数是90,等级是A。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 1月15日
  • 已采纳回答 1月7日
  • 创建了问题 1月7日