1.声明一个电脑类: 属性:品牌、颜色、内存 方法:打游戏、写代码、看视频
a.创建电脑类的对象,然后通过对象点的方式获取、修改、添加和删除它的属性
b.通过attr相关方法去获取、修改、添加和删除它的属性
class Computer:
def __init__(self, brand, color, memory):
self.brand = brand
self.color = color
self.memory = memory
def play_game(self):
print('我正在打游戏!')
def write_code(self):
print('写代码让我快乐!')
def watch_video(self):
print('电视还是多好看!')
a = Computer('华硕','黑色','16G') #查看
print(a.brand)
a.brand = '戴尔' #修改
print(a.brand)
a.size = '16寸' #添加
print(a.size)
del a.size #修改
print(getattr(a,'brand')) #查看
setattr(a,'brand','联想') #修改
setattr(a,'size','16寸') #添加
print(a.size)
delattr(a,'size') #删除
print(a.brand)
a.play_game()
a.write_code()
a.watch_video()
结果:
华硕
戴尔
16寸
戴尔
16寸
联想
我正在打游戏!
写代码让我快乐!
电视还是多好看!
2.声明一个人的类和狗的类:
狗的属性:名字、颜色、年龄 狗的发法:叫唤
人的属性:名字、年龄、
狗的方法:遛狗
a.创建人的对象小明,让他拥有一条狗大黄,然后让小明去遛大黄
class Dog:
def __init__(self,name,color,age):
self.name = name
self.color = color
self.age = age
def call(self):
print('汪~汪~汪~~~')
class Person:
def __init__(self,name,age,dog):
self.name = name
self.age = age
self.dog = dog
def take_dog(self):
print('%s的%s在街上溜着%s的%s的%s'%(self.age,self.name,dog.age,dog.color,dog.name))
dog = Dog('大黄','黄色','2岁')
person1 = Person('小明','18岁',dog)
person1.take_dog()
dog.call()
结果:
18岁的小明在街上溜着2岁的黄色的大黄
汪~汪~汪~~~
3.声明一个矩形类:
属性: 长、宽 方法:计算周长和面积
a.创建不同的矩形,并且打印其周长和面积
class Rect:
def __init__(self, width, weight):
self.width = width
self.weight = weight
def perimeter(self):
return 2 * (self.weight + self.width)
def area(self):
return self.weight * self.width
rect1 = Rect(3,4)
rect2 = Rect(6,9)
print('矩形1的周长是%d,面积是%d'%(rect1.perimeter(),rect1.area()))
print('矩形2的周长是%d,面积是%d'%(rect2.perimeter(),rect2.area()))
结果:
矩形1的周长是14,面积是12
矩形2的周长是30,面积是54
4.创建一个学生类:
属性:姓名,年龄,学号 方法:答到,展示学生信息 创建意个班级类:
属性:学号,班级名 方法:添加学生,删除学生,点名
class Student:
def __init__(self, name, age, id):
self.name = name
self.age = age
self.id = id
def amount(self):
print('%s到!'%self.name)
def stu_info(self):
print('姓名:%s,年龄:%s,学号:%s'%(self.name,self.age,self.id))
class Class:
def __init__(self, id, c_name,stu):
self.class1 = {'班级名':c_name}
self.id = id
self.c_name = c_name
self.stu = stu
def add_stu(self):
self.class1[self.id] = [self.stu.name, self.stu.age]
def del_stu(self):
del self.class1[self.id]
def sign_in(self):
print(self.stu.name)
stu1 = Student('小明','18','001')
class1 = Class(stu1.id,'python1806',stu1)
stu1.amount()
stu1.stu_info()
class1.add_stu()
print(class1.class1)
class1.del_stu()
print(class1.class1)
class1.sign_in()
测试:
小明到!
姓名:小明,年龄:18,学号:001
{'班级名': 'python1806', '001': ['小明', '18']}
{'班级名': 'python1806'}
小明
5.写一个类,封装所有和数学运算相关的功能(包含常用功能和常用值,例如:pi,e等)
class Math:
def __init__(self):
self.pi = 3.14
def add(self, x, y):
return x + y
def rectangle_area(self, width, weight):
return width * weight
def circle_area(self, radius):
return self.pi * radius ** 2
def max(self,*args):
self.args = args
list1 = list(self.args)
list1.sort()
return list1[-1]
ma = Math()
print('两个数和是',ma.add(3,4))
print('长方形的面积是:',ma.rectangle_area(3,4))
print('圆的面积是:',ma.circle_area(3))
print('序列的最大值是:',ma.max(4,7,2,5,1))
结果:
两个数和是 7
长方形的面积是: 12
圆的面积是: 28.26
序列的最大值是: 7