类 属性和方法
没有使用类时
# 练习基本语法 求班级中小于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']
'''