python的类的实际联系--烤地瓜和搬家具
#coding:utf-8
2 class SweetPotato():
3 def __init__(self):
4 #先初始化对象
5 self.cook_time = 0
6 self.cook_state = "生的"
7 self.condiments = []#调味料
8
9 def cook(self,time):
10 """烤地瓜方法"""
11 self.cook_time += time
12 if 0 <= self.cook_time < 3:
13 self.cook_state = "生的"
14 if 3 <= self.cook_time < 5:
15 self.cook_state = "半生不熟"
16 if 5 <= self.cook_time < 8:
17
18 self.cook_state = "熟的"
19 if self.cook_time >= 8:
20 self.cook_state = "烤糊了"
21 def add_condiments(self,condiment):
22
23 #用户根据自己的爱好添加配料
24 self.condiments.append(condiment)
def __str__(self):
27 return f"时间:{self.cook_time},状态:{self.cook_sta te},配料{self.condiments}"
28
29 digui1 = SweetPotato()
30 print(digui1)
31 digui1.cook(2)
32 digui1.add_condiments("酱油")
33 print(digui1)
#运行结果
时间:0,状态:生的,配料[]
时间:2,状态:生的,配料['酱油']
#conding:utf-8
2 """"
3 定义类:
4 1.家具类
5 2.房子类
6 再通过类来创建对象
7
8 """""
9 class fitment():
10 def __init__(self,fitment_name,area):
11 self.fitment_name = fitment_name
12 self.area = area
13
14 class house():
15 def __init__(self,location,area):
16 #初始化实例的基本属性
17 self.location = location
18 self.area = area
19 self.remainint_area = area
20 self.fitments = []#空列表
21 def add_fitments(self,fitment):
22 if fitment.area > self.remainint_area:
23 print("该家具放不下")
24 return
25 else:
26 self.fitments.append(fitment.fitment_name)
27 self.remainint_area -= fitment.area
28 print("家具摆放成功!")
29 return
30 def __str__(self):
31 return f"房屋的位置:{self.location},房子的面积:{s elf.area},剩余面积{self.remainint_area},房屋家具有{self.fit ments}"
32
33 bed = fitment("双人床",6)
34 sofa = fitment("沙发",10)
35 home = house("北京",1000)
36 home.add_fitments(bed)
#运行结果
家具摆放成功!
房屋的位置:北京,房子的面积:1000,剩余面积994,房屋家具有['双人床']
从代码中我们可以体会到面对对象编程的好处,可以是代码的变得十分简洁。
python的类的实际联系--烤地瓜和搬家具的更多相关文章
- Python笔记——类定义
Python笔记——类定义 一.类定义: class <类名>: <语句> 类实例化后,可以使用其属性,实际上,创建一个类之后,可以通过类名访问其属性 如果直接使用类名修改其属 ...
- 【python】类中的self
在python的类中,经常会写self,代表对象自己.如下例: #coding=utf-8 class Foo: def __init__(self, name): self.name = name ...
- python基础——类和实例
python基础——类和实例 面向对象最重要的概念就是类(Class)和实例(Instance),必须牢记类是抽象的模板,比如Student类,而实例是根据类创建出来的一个个具体的“对象”,每个对象都 ...
- python(6)-类
面向对象编程是一种编程方式,此编程方式的落地需要使用 "类" 和 "对象" 来实现,所以,面向对象编程其实就是对 "类" 和 "对 ...
- 从C#到Python —— 4 类及面向对象
http://www.cnblogs.com/yanxy/archive/2010/04/04/c2p_4.html 如果你熟悉C#,那么对类(Class)和面向对象(Object Oriented) ...
- Python type类具体的三大分类:metaclasses,classes,instance
Python type类视角中的对象体系需要我们不断的学习,其中我们使用的时候需要注意.下面我们就看看如何才能更好的运用Python type类.下面的文章希望大家有所收获. 在单纯的Python t ...
- python元类分析
刚開始接触到Python新式类中的元类的概念的时候非常是纠结了下..不知道这是个啥东西... 用下面几个定义来说明吧: (1)Python中,类也是对象..仅仅只是这样的对象比較的特殊,他用于创建别的 ...
- Python用类实现串以及对串的方法进行单元测试
串是一种常见的数据结构,这里使用Python定义类来实现相应的方法.先看代码,再对相关知识进行讲解. # coding=utf-8 __all__=['ADTString'] class ADTStr ...
- Python基础-类
Python基础-类 @(Python)[python, python基础] 写在前面 如非特别说明,下文均基于Python3 摘要 本文重点讲述如何创建和使用Python类,绑定方法与非绑定方法的区 ...
随机推荐
- spfa+链式前向星模板
#include<bits/stdc++.h> #define inf 1<<30 using namespace std; struct Edge{ int nex,to,w ...
- codeforce 849A
A. Odds and Ends time limit per test 1 second memory limit per test 256 megabytes input standard inp ...
- codeforces 1C (非原创)
C. Ancient Berland Circus time limit per test 2 seconds memory limit per test 64 megabytes input sta ...
- ewebeditor 路径
1.关键文件的名称和路径Admin_Login.asp 登录页面Admin_Default.asp 管理首页Admin_Style.aspAdmin_UploadFile.aspUpload.aspA ...
- 网站备案查询/ICP备案查询网
网站备案查询/ICP备案查询网 互联网站备案信息全国公安机关互联网站安全服务平台http://www.beian.gov.cn/portal/index 1 http://www.miitbeian. ...
- JS Object Deep Copy & 深拷贝 & 浅拷贝
JS Object Deep Copy & 深拷贝 & 浅拷贝 https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Refe ...
- taro 如何展示多行文本 省略号
taro 如何展示多行文本 省略号 webkit-box-orient: vertical; See the Pen Pure CSS multiline text with ellipsis by ...
- Event Bus & Event Emitter
Event Bus & Event Emitter Event Bus https://code.luasoftware.com/tutorials/vuejs/parent-call-chi ...
- vue & modal props & form data update bug
vue & modal props & form data update bug OK <div> <BindModal :dialogBindVisible=&qu ...
- VAST生态驱动下,NGK算力增量效应初现!
VAST维萨币上线的消息放出来之后,NGK算力的价格一直在上涨,其实这也不难理解,因为VAST维萨币需要VAST星光值进行兑换,VAST星光值又需要SPC算力福利代币进行挖矿释放的,SPC算力福利代币 ...