A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

秋小莫

初级黑马

  • 黑马币:23

  • 帖子:7

  • 精华:0

© 秋小莫 初级黑马   /  2018-8-1 23:20  /  1057 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

声明一个类 Student 有属性姓名、年龄、和考试成绩,提示用户输入3个学生的姓名和年龄,考试成绩为 0 --100 的随机数
# ,根据这些数据创建学生对象,将对象添加至 stu_list 列表,添加完成后,遍历列表,删除成绩<=60分的学员信息
import random

class Student(object):
    def __init__(self, name, age, score):
        self.name = name
        self.age = age
        self.score = score
i = 0
stu_list = []
while i <= 2:
    stu_name = input("请输入姓名" )
    stu_age = input("请输入年龄 ")
    stu_score = random.randint(0, 100)
    stu_info = Student(stu_name, stu_age, stu_score)
    stu_dict = {"name": stu_info.name,
                "age": stu_info.age,
                "score": stu_info.score}
    stu_list.append(stu_dict)
    i += 1
b_list = []
for stu in stu_list:
    if stu["score"] > 60:
        b_list.append(stu)
print(b_list)

在做这个题一开始有点迷,不知道当用户输入姓名 年龄,成绩的时候,又是怎么在创建对象的同时,把参数传递过去。在问过之后才发现,在创建对象的时候把变量传过去,然后保存在字典中,在加到列表里,之后在对列表遍历。 在做题的时候要一步一步的实现要求,这样会简化好多问题。

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马