用python输入成绩_使用%s,%d根据用户输入得分(python)分配通过/未通过成绩确定...

这篇博客讨论了一个Python程序,该程序要求用户输入成绩并将其存储在列表中。当用户输入-99时,程序结束。程序通过遍历列表,如果成绩大于等于50则标记为'P'(通过),否则标记为'F'(未通过)。目前的代码实现存在一些问题,需要整合成绩输出和标记输出,同时修正变量使用和格式化问题。
摘要由CSDN通过智能技术生成

期望的结果:

输入测试分数(退出-99):55

输入测试分数(退出-99):77

输入测试分数(退出-99):88

输入测试分数(-99退出):24

输入测试分数(退出-99):45

输入测试分数(退出-99): - 99

55 77 88 24 45

P P P F F.

进程以退出代码0结束

到目前为止的代码:(除了Pass失败分配之外的工作)

Python程序要求用户输入添加到名为score的列表中的分数。 然后在该分数P下打印通过F失败。

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)

你能编辑你的问题来说明你期望的确切输出,以及它目前的样子吗? 此外,您的print_scores表示它接受列表但不接受列表。 它恰好使用您创建的全局范围scores列表,但如果您确实希望print_scores获取列表,那么您需要确保您的函数实际上将列表作为参数 - > def print_scores(the_list):

#这是期望的结果:.....输入测试分数(-99退出):55输入测试分数(-99退出):77输入测试分数(-99退出):49输入 测试分数(-99退出): - 99 55 77 49 PPF过程以退出代码0结束

编辑您的问题,将其放在那里并正确格式化。 将其设置为评论不能很好地转换。

这有帮助吗? 基本上是分数下的P或F(通过或失败)。

你正在考虑正确的思路,但是你需要从顶部开始运行你的程序,并确保你的理由正确。

首先,你已经编写了程序,在你检查它们是否通过之前打印出所有的分数,这样你就会得到一个数字列表,然后是一个P / F列表。 这些需要一起发生才能正确显示。

另外,确保跟踪变量是什么; 在你的上一个函数中,你试图使用"得分",它不再存在。

最后,我不确定您对%d或%s的确切要求,但您可能正在寻找带有format()的命名参数,如下所示。

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))

我相信这就是你要找的东西。

谢谢你。 {}参数对我来说是新鲜事。我如何格式化它以使P F低于等级?目前的格式化已将其更改为现在垂直列出等级。

我知道[]括号表示法是指字典表示法。我从stackoverflow和youtube学到的东西比我在这个在线社区大学学到的更多

要将P / F置于成绩之下,请将字符串从"{0} {1}"更改为"{0} n {1}"。

太好了谢谢。我把新行缩进后出现问题。谢谢大家的帮助。我学到了很多东西!

使用{}的格式在字符串中使用,如果您在该字符串上使用format()函数,它将替换它。所以{0}将被format()中的第一个参数替换,在这种情况下是'item'。反斜杠称为"转义"字符,其后面的字符将代表您通常无法输入的内容。 n为您提供换行符,这是最有用的换行符。

很高兴有pycharm告诉你哪里出错了。但对于没有先前编程背景的人来说,必须将%d和%s与字符串与数字的表示参数相关联是令人困惑的。编程确实是一种与其他语言一样的语言。我发现尽管参数的编码逻辑是逐行构造的,但它确实会跳转。我想,就像其他一切一样,你花费的时间越多,它所获得的第二天性就越多。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值