活动地址:CSDN21天学习挑战赛
lamdba a,b:
a + b
1.类名
2.属性
3.方法
class类名:
def方法名(se1f):
pass
变量=类名()
self是一个形参,不需要手动传递实参值,python解释器会自动将调用该方法
的对象作为实参值进行传递
self就是对象自己
调用时机:创建对象之后会自动调用
应用:给对象添加属性的
注意点:如果存在self之外的形参,在创建对象的时候,必须传递实参值
print(对象)的时候会自动调用,必须返回一个字符串
需求.
list1 = [{'name': 'd', 'age': 19},
{'name': 'b', 'age': 16},
{'name': 'a', 'age': 16},
{'name': 'c', 'age': 20}]
list1 = [{'name': 'd', 'age': 19},
{'name': 'b', 'age': 16},
{'name': 'a', 'age': 16},
{'name': 'c', 'age': 20}]
list1.sort(key=lambda x: x['age'], reverse=True)
1.包含属性姓名name,年龄age>.
2.包含方法:
1.吃饭的方法eat,在方法中输出xx要吃饭,xx为学生具体的名字
2.睡觉的方法sleep,在方法输出xx要睡觉, , xx为学生具体的名字
3.过年的方法year,要求,年龄增加一岁
3.打印对象的时候,输出学生的姓名和年龄信息格式如下
姓名: xxx, 年龄: xx岁,XX为具体的名字和年龄
4.创建两个对象,并分别调用 吃饭和睡觉和过年的访问
小明18岁
小红17岁
分析
类名:学生类Student
属性:姓名name,年龄age
方法:吃饭eat 睡觉 sleep 过年year, _ str_, _init_
class Student:
# 添加属性
def __init__(self, name, age):
self.name = name
self.age = age
def __str__(self):
return f"姓名:{self.name},年龄:{self.age}岁"
def eat(self):
print(f'{self.name}要吃饭')
def sllep(self):
print(f'{self.name}要睡觉')
def year(self):
self.age += 1
# 创建对象
xm = Student('小明',18)
xh = Student('小红',17)
print(xm)
print(xh)
xm.eat()
xm.sllep()
xm.year()
print(xm)
执行结果:
"D:\Program Files1\Python\python.exe" D:/Pycharm-work/pythonTest/案例/作业二.py
姓名:小明,年龄:18岁
姓名:小红,年龄:17岁
小明要吃饭
小明要睡觉
姓名:小明,年龄:19岁
Process finished with exit code 0
电脑有品牌(brand),有价格(price),能播放电影(play_ movie)。
分别创建2个对象"小米电脑mi“和"苹果电脑mac”。分别调用放电影的动作,输出内容格式如下: xx播放电影oo, xx为电脑品牌,oo为电脑的名字,
电影名字作为参数传递即可
●小米电脑播放葫芦娃
●苹果电脑播放变形金刚
分析
类名:电脑类 Computer
属性:品牌 brand ,价格 price [movie 电影的名字]
方法:play_movie
class Computer:
def __init__(self, brand, price):
self.brand = brand
self.price = price
def play_movie(self, movie):
print(f'{self.brand} 播放电影 {movie}')
# 创建对象
mi = Computer("小米", 4899)
mac = Computer("Mac", 16999)
mi.play_movie("葫芦娃")
mac.play_movie("变形金刚")
mi.play_movie("西游记")
执行结果:
"D:\Program Files1\Python\python.exe" D:/Pycharm-work/pythonTest/案例/03.py
小米 播放电影 葫芦娃
Mac 播放电影 变形金刚
小米 播放电影 西游记
Process finished with exit code 0