类 属性和方法

没有使用类时

#  练习基本语法 求班级中小于3岁孩子的男生是  女生是


            def get_m(students, minage=3):
                # 男生的列表
                malelist = []

                # 遍历全部的学生
                for student in students:
                    # 筛选出小于3岁的孩子
                    if student['age'] < minage:
                        # 筛选出男生
                        if student['gender'] == 'male':
                            malelist.append(student['name'])

                return malelist


def get_f(students, minage=3):
    # 女生的列表
    femalelist = []
    # 遍历全部的学生
    for student in students:
        # 筛选出小于3岁的孩子
        if student['age'] < minage:
            # 筛选出女生
            if student['gender'] == 'female':
                femalelist.append(student['name'])
    return femalelist


if __name__ == '__main__':
    test_students = [
        {'age': 18, 'name': 'jay', 'gender': 'male'},
        {'age': 1, 'name': 'f', 'gender': 'female'},
        {'age': 2, 'name': 'm', 'gender': 'male'},
        {'age': 1, 'name': 'f2', 'gender': 'female'},
        {'age': 2, 'name': 'm2', 'gender': 'male'},
    ]
    print(f'男生:{get_m(test_students)}')
    print(f'女生:{get_f(test_students)}')

使用类后

#  练习基本语法 求班级中小于3岁孩子的男生是  女生是
# 使用类的方法  改写
# 学生一个类 有判断年龄的方法 类在属性中传入参数 全部的方法都可以共有属性内的值
class Student():
    # 类有三个属性 年龄 姓名 性别  'age':18,'name':'jay','gender':'male'
    def __init__(self,students,minage=3):
        self._students = students
        self._minage = minage
    # 方法 筛选小于3岁的孩子的姓名 放入列表
    def get_student(self):
        male_list=[]
        female_list=[]
        # 遍历全部的学生
        for student in self._students:
            # 筛选出小于3岁的孩子
            if student['age'] < self._minage:
                # 筛选出男生
                if student['gender'] == 'male':
                    male_list.append(student['name'])
                # 筛选出女生
                if student['gender'] == 'female':
                    female_list.append(student['name'])
        print(f'男生:{male_list}')
        print(f'女生:{female_list}')

if __name__ == '__main__':
    test_students=[
        {'age':18,'name':'jay','gender':'male'},
        {'age': 1, 'name': 'f', 'gender': 'female'},
        {'age': 2, 'name': 'm', 'gender': 'male'},
        {'age': 1, 'name': 'f2', 'gender': 'female'},
        {'age': 2, 'name': 'm2', 'gender': 'male'},
    ]
    s=Student(test_students)
    s.get_student()
'''

男生:['m', 'm2']
女生:['f', 'f2']


'''

 

posted @ 2023-08-16 14:45  胖豆芽  阅读(4)  评论(0编辑  收藏  举报