我正在为我的介绍CS课程写一个程序,但我有点卡住了。
我有一个与分数列表相对应的指定名单
我应该提示用户输入一个名字,然后该程序应输出与相应分数一起输入的名称。
正如我现在所写的那样,无论输入如何,程序都会在集合中打印名字和分数。我已经坚持了一段时间,任何帮助将不胜感激!
这就是我现在所拥有的:
names=['Jim','Sarah','Jason','Lynne','Ginny','Joe','Susan'];
scores=['88','92','95','84','85','92','89'];
input("Please enter student's name:")
for i in range (0,7):
print (input(names[i] + scores[i]));
答案 0 :(得分:0)
程序应该输出输入的名称
考虑到你没有捕获input()
返回值,这将很难。
试试这个(作为例子)
name = input("Please enter student's name:")
print(name)
然后,您接下来的任务是在name == <a name in the list>
提示:您可以将这些用于循环,而不是range(0,7)
for student in names:
或者更好的是,请参阅zip lists in python
for (student, score) in zip(names, scores):
答案 1 :(得分:0)
使用zip
功能,您可以将两个lists
组合在一个易于使用的1对1 tuples
组中。
names=['Jim','Sarah','Jason','Lynne','Ginny','Joe','Susan']
scores=['88','92','95','84','85','92','89']
data = zip(names, scores) # <- ('Jim', '88'), ('Sarah', '92'), ...
stud = input('Enter the student's name: ')
for (student, score) in data:
if (stud == student):
print('{} -> {}'.format(student, score))
答案 2 :(得分:0)
最好使用Python词典:
student_scores = {'Jim': 88, 'Sarah': 92, 'Jason': 95}
依旧...... 然后你可以像这样呼叫他们每个人;
name = input("Please enter student's name: ")
print(name + 'has a score of ' + student_scores[name])