使用%s,%d根据用户输入分数(python)分配及格/不及格分数确定
预期结果: 输入测试分数-99退出:55 输入测试分数-99退出:77 输入测试分数-99退出:88 输入测试分数-99退出:24 输入测试分数-99退出:45 输入测试分数-99退出:-99 55 77 88 24 45 P P F F 进程已完成,退出代码为0 迄今为止的代码:除通过-失败分配外,其他代码均有效 Python程序,要求用户输入添加到名为“分数”列表中的分数。然后在该分数下打印P表示通过F表示失败使用%s,%d根据用户输入分数(python)分配及格/不及格分数确定,python,Python,预期结果: 输入测试分数-99退出:55 输入测试分数-99退出:77 输入测试分数-99退出:88 输入测试分数-99退出:24 输入测试分数-99退出:45 输入测试分数-99退出:-99 55 77 88 24 45 P P F F 进程已完成,退出代码为0 迄今为止的代码:除通过-失败分配外,其他代码均有效 Python程序,要求用户输入添加到名为“分数”列表中的分数。然后在该分数下打印P表示通过F表示失败 scores = [] #list is initialized while
scores = [] #list is initialized
while True:
score = int(input("Enter a test score (-99 to exit): "))
if score == -99:
break
scores.append(score)
def print_scores(): #accepts the list and prints each score separated by a space
for item in scores:
print(item, end = " ") # or 'print item,'
print_scores() # print output
def set_grades(): #function determines whether pass or fail
for grade in scores:
if score >= 50:
print("P")
else:
print("F")
print(set_grades)
您的思路是正确的,但是您需要从头开始运行您的程序,并确保您的推理正确 首先,你已经编写了一个程序来打印所有的分数,然后再检查它们是否通过,所以你会得到一个数字列表,然后是一个p/F列表。这些需要同时发生才能正确显示。 另外,要确保跟踪变量是什么;在上一个函数中,您尝试使用“score”,它已经不存在了。 最后,我不确定您对%d或%s的具体要求,但您可能正在查找格式为的命名参数,如下所示
scores = [] #list is initialized
while True:
score = int(input("Enter a test score (-99 to exit): "))
if score == -99:
break
scores.append(score)
for item in scores:
if item >= 50:
mark = 'P'
else:
mark = 'F'
print('{0} {1}'.format(item, mark))
我相信这就是你想要的。你能编辑你的问题来说明你期望的确切结果,以及它目前的样子吗?此外,您的print_分数表示它接受列表,但它不接受。它恰好使用您创建的全局范围的分数列表,但是如果您确实希望打印分数采用列表,那么您需要确保您的函数实际采用列表作为参数->def print\u scores\u list:这是所需的结果:。。。。。输入测试分数-99退出:55输入测试分数-99退出:77输入测试分数-99退出:49输入测试分数-99退出:-99 55 77 49 P F流程结束,退出代码为0编辑您的问题,将其放入其中并正确格式化。将其设置为注释并不能很好地翻译。这有帮助吗?基本上,P或F的及格或不及格就在分数之下。谢谢你。{}参数对我来说是新的东西。我如何格式化它以使P F低于等级?当前的格式已更改为垂直列出成绩。我知道[]括号表示法是字典表示法的参考。我从stackoverflow和youtube学到的东西比我从这个在线社区学院学到的要多。要将P/F放在等级之下,请将字符串从“{0}{1}”更改为“{0}\n{1}”。非常感谢。我把新行缩进后,发现了问题。谢谢大家的帮助。我学到了很多!使用{}的格式化在字符串中使用,如果您在该字符串上使用format函数,它将替换该字符串。因此{0}将替换为格式中的第一个参数,在本例中为“item”。反斜杠称为“转义”字符,它后面的字符将表示您通常无法键入的内容\n给你一个换行符,这是最有用的。