考点:
自定义函数、引用传值、二位列表的输入输出
题目:
编写input()和output()函数输入,
输出N个学生的数据记录。
分析思路:
根据考点,自己定义两个函数分别用于数据的输入和输出。我们可以自己定义指定个学生信息的输入。
1.自己定义一个全局变量列表类型students。
2.录入数据时将这个定义的变量students传入到函数内部,然后再输入函数中进行数据的录入。
3.录入数据的时候,需要使用列表表示学生信息,例如每一个学生用类似列表[['aaa', 'a1', ['11', '22', '33']]来表示。
4.学生信息我们就录入学号、姓名、成绩1、成绩2、成绩3,这里的多门成绩做成一个列表,这样以便后面成绩信息的批量处理。
5.最后自定义一个输出函数,然后在输出函数内根据students内的信息进行相应数据的批量输出,这里成绩输出的时候,我们采用字符串的join方法把多个成绩拼接。
程序过程:
请输入学号:aaa
请输入姓名:a1
请输入第1门成绩:11
请输入第2门成绩:22
请输入第3门成绩:33
请输入学号:bbb
请输入姓名:b1
请输入第1门成绩:22
请输入第2门成绩:33
请输入第3门成绩:44
[['aaa', 'a1', ['11', '22', '33']], ['bbb', 'b1', ['22', '33', '44']]]
学号:aaa,姓名:a1,成绩:11,22,33
学号:bbb,姓名:b1,成绩:22,33,44
本节源代码:
""" students=[] def myinput(stu): for i in range(2): #这里模拟两个学生 stu.append([]) stu[i].append(input("请输入学号:")) stu[i].append(input("请输入姓名:")) stu[i].append([]) for j in range(3): stu[i][2].append(input("请输入第%d门成绩:"%(j+1))) def myoutput(stus): for stu in stus: print("学号:%s,姓名:%s,成绩:%s"%(stu[0],stu[1],",".join(stu[2]))) myinput(students) print(students) myoutput(students)