【发布时间】:2014-11-10 10:24:17
【问题描述】:
我在大学的介绍 comp sci 课程中(我对整个编程相当陌生)并且对于我们被告知在下面做的一个项目 1. 设计并编写一个程序,从输入文件中读取学生的分数,计算他们的字母成绩 并显示他们的姓名和字母等级。输入文件中的每一行文本都将包含所有信息 关于单个学生 - 名字和姓氏,后跟 5 个作业分数、5 个测验分数和 2 个考试 分数。所有信息字段均以空格分隔。作业满分100分, 测验满分 20 分,考试满分 100 分。以下是一些示例输入: 史蒂夫·史密斯 100 70 80 55 90 15 20 18 17 12 78 84
我的问题是将所有输入视为同一事物,因此我无法提取上述示例的特定部分并计算学生成绩,这是我的代码到目前为止
def file():
myfile = pickAFile()
print myfile
file = open(myfile,"rt")
contents = file.readlines()
list = [contents]
print list[0]
但它会不断打印出整个示例输入,而不仅仅是第一个单词,我不知道为什么如果可能请帮助我正在使用 JES
【问题讨论】:
-
也许你的意思是
list = [item for item in contents.split(" ")? -
list = [contents]将contents(行列表)放入列表中。然后,您将打印出该列表的第一个也是唯一的元素,它是文件中所有行的列表。如果您将其更改为list = contents,您将只打印第一行。 -
我已经尝试过了,当我需要能够从中挑选出个别的东西时,我仍然可以得到整个示例输入,例如只打印 Steve 或只打印数字
-
如何让样本的每个部分在同一个列表中输入不同的元素?
标签: python arrays string list input