为了账号安全,请及时绑定邮箱和手机立即绑定

从矩阵中获取学生姓名

从矩阵中获取学生姓名

呼如林 2021-10-12 17:38:12
我正在学习 python 并进行作业,以从 student_grades 列表中获取学生姓名的 new_list,该列表采用矩阵的形式。我能够得到它到我从列表中得到第一个名字的地步,但无法弄清楚如何完成循环,所以它遍历矩阵上的每个名字。谢谢你。student_grades = [    ['Student', 'Exam 1', 'Exam 2', 'Exam 3'],    ['Jane', '100', '90', '80'],    ['Susan', '88', '99', '111'],    ['Dick', '45', '56', '67']]student_list = []for names in student_grades:    #print(names)    student_list.append(student_grades[1][0])print(student_list)['Jane', 'Jane', 'Jane', 'Jane']
查看完整描述

3 回答

?
杨__羊羊

TA贡献1943条经验 获得超7个赞

你需要得到索引


student_list = []

for idx in range(len(student_grades)):

    student_list.append(student_grades[idx][0])


print(student_list)#['Student', 'Jane', 'Susan', 'Dick']


查看完整回答
反对 回复 2021-10-12
?
慕运维8079593

TA贡献1876条经验 获得超5个赞

你知道什么是嵌套循环吗?


如果不继续->


首先,嵌套循环是循环内的循环,因此第一个循环将遍历列表列表中的每个列表,然后第一个循环内的第二个循环将遍历该列表中的每个对象(考试分数)。


前任:


lst = [['Jane', 100, 90, 80], ['Susan', '88', '99', '111'], ['Dick', 46, 56, 67]]

std_lst = []

for i in lst:

   # i is the list now like (['Jane', 100, 90, 80])

   std_lst.append(i[0])


# std_lst = ['Jane', 'Susan', 'Dick']


查看完整回答
反对 回复 2021-10-12
?
郎朗坤

TA贡献1921条经验 获得超9个赞

student_list.append[names[0]]

问题是您当前在每次迭代中获取完全相同的列表元素,而不考虑迭代。


此外,没有真正的理由将列标题强制print添加到成绩簿中——当您以特定格式打印数据时,让它成为附加详细信息。


student_grades = [

    ['Jane', '100', '90', '80'],

    ['Susan', '88', '99', '111'],

    ['Dick', '45', '56', '67']

]

student_list = []

for names in student_grades:

    student_list.append(names[0])


print(student_list)

输出:


['Jane', 'Susan', 'Dick']

最后,我希望您希望将分数保留为整数,而不是字符串。


查看完整回答
反对 回复 2021-10-12
  • 3 回答
  • 0 关注
  • 185 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号