从矩阵中获取学生姓名

我正在学习 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']


呼如林
浏览 186回答 3
3回答

杨__羊羊

你需要得到索引student_list = []for idx in range(len(student_grades)):    student_list.append(student_grades[idx][0])print(student_list)#['Student', 'Jane', 'Susan', 'Dick']

慕运维8079593

你知道什么是嵌套循环吗?如果不继续->首先,嵌套循环是循环内的循环,因此第一个循环将遍历列表列表中的每个列表,然后第一个循环内的第二个循环将遍历该列表中的每个对象(考试分数)。前任: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']

郎朗坤

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']最后,我希望您希望将分数保留为整数,而不是字符串。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python