python中为什么我的for循环里嵌套的if只能循环一次?

代码如图
我创建了两个列表,分别存储学生姓名和成绩
然后想通过input函数录入姓名,然后遍历姓名列表
如果姓名==列表[i]的话就修改成绩,否则输出找不到该学生
但是输入aa的话就能找到,输出bb就显示找不到该学生
为啥我这个for循环只执行了一次?
求解 谢谢谢谢谢

你要遍历的话,不能把name = input("请输入你想修改的学生姓名:")放在循环里

应该是先输入,对输入的字符进行循环遍历,而不是循环输入”学生姓名“

代码

运行结果:

运行结果

温馨提示:答案为网友推荐,仅供参考
第1个回答  2021-03-24
你这个程序只依次循环0,1两次。第一次只能改aa,第二次只能改bb.

输入姓名和分数应该放在for循环的前面。一次改一个人的成绩。要想改多人的,外面还要加一个while循环,没好跳出。

list1=['aa','bb']
list2=[88,99]
print(list2)
for i in range(len(list1)):
name= input('输了姓名:')
if name==list1[i]:
score = int(input('输入分数:'))
list2[i]=score
print(list2)
##########
[88, 99]
输了姓名:aa
输入分数:66
输了姓名:bb
输入分数:77
[66, 77]
相似回答