#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的类的实际联系--烤地瓜和搬家具的更多相关文章

  1. Python笔记——类定义

    Python笔记——类定义 一.类定义: class <类名>: <语句> 类实例化后,可以使用其属性,实际上,创建一个类之后,可以通过类名访问其属性 如果直接使用类名修改其属 ...

  2. 【python】类中的self

    在python的类中,经常会写self,代表对象自己.如下例: #coding=utf-8 class Foo: def __init__(self, name): self.name = name ...

  3. python基础——类和实例

    python基础——类和实例 面向对象最重要的概念就是类(Class)和实例(Instance),必须牢记类是抽象的模板,比如Student类,而实例是根据类创建出来的一个个具体的“对象”,每个对象都 ...

  4. python(6)-类

    面向对象编程是一种编程方式,此编程方式的落地需要使用 "类" 和 "对象" 来实现,所以,面向对象编程其实就是对 "类" 和 "对 ...

  5. 从C#到Python —— 4 类及面向对象

    http://www.cnblogs.com/yanxy/archive/2010/04/04/c2p_4.html 如果你熟悉C#,那么对类(Class)和面向对象(Object Oriented) ...

  6. Python type类具体的三大分类:metaclasses,classes,instance

    Python type类视角中的对象体系需要我们不断的学习,其中我们使用的时候需要注意.下面我们就看看如何才能更好的运用Python type类.下面的文章希望大家有所收获. 在单纯的Python t ...

  7. python元类分析

    刚開始接触到Python新式类中的元类的概念的时候非常是纠结了下..不知道这是个啥东西... 用下面几个定义来说明吧: (1)Python中,类也是对象..仅仅只是这样的对象比較的特殊,他用于创建别的 ...

  8. Python用类实现串以及对串的方法进行单元测试

    串是一种常见的数据结构,这里使用Python定义类来实现相应的方法.先看代码,再对相关知识进行讲解. # coding=utf-8 __all__=['ADTString'] class ADTStr ...

  9. Python基础-类

    Python基础-类 @(Python)[python, python基础] 写在前面 如非特别说明,下文均基于Python3 摘要 本文重点讲述如何创建和使用Python类,绑定方法与非绑定方法的区 ...

随机推荐

  1. 计蒜客 2019南昌邀请网络赛J Distance on the tree(主席树)题解

    题意:给出一棵树,给出每条边的权值,现在给出m个询问,要你每次输出u~v的最短路径中,边权 <= k 的边有几条 思路:当时网络赛的时候没学过主席树,现在补上.先树上建主席树,然后把边权交给子节 ...

  2. Linux Bash Script conditions

    Linux Bash Script conditions shell 编程之条件判断 条件判断式语句.单分支 if 语句.双分支 if 语句.多分支 if 语句.case 语句 refs http:/ ...

  3. vi, vim 使用教程

    vim 使用教程 ```shcd lscd ../cd -pwdcprmmkdirtarmvmbtar -zcfchmodsshtopqfree ``` 数字0含空字符到行首,^不含空字符到行首.G移 ...

  4. open an iOS simulator from the terminal

    open an iOS simulator from the terminal # simulator $ open -a Simulator flutter https://flutter.dev/ ...

  5. 呼叫河马——搭建在NGK公链上的去中心化智能合约DAPP

    基于区块链技术发展的DAPP是一种分布式应用生态系统.目前最受DAPP欢迎的区块链有以太坊.EOS.波场等公链. 但由于当前 EOS资源模型的局限性,使得其使用成本较高.尽管 EOS的DPOS共识机制 ...

  6. Redis-第九章节-动态字符串

    目录 概述 SDS(动态字符串) SDS(动态字符串)与c语言字符串的区别 1.概述 String类型底层实现的简单动态字符串sds,是可以修改的字符串.它采用预分配冗余空间的方式来减少内存的频繁分配 ...

  7. 1047 Student List for Course ——PAT甲级真题

    1047 Student List for Course Zhejiang University has 40,000 students and provides 2,500 courses. Now ...

  8. 【Azure 应用服务】App Service与APIM同时集成到同一个虚拟网络后,如何通过内网访问内部VNET的APIM呢?

    问题描述 App Service访问的APIM已配置内部虚拟网络(Internal VNet)并拥有内网IP地址.App Service与APIM都在相同的虚拟网络(VNET)中.App Servic ...

  9. SpringBoot读取配置文件的内容

    1.@Value读取 在springboot项目中,如果要读取配置文件application.properties或application.yml文件的内容,可以使用自带的注解@Value.以prop ...

  10. SpringBoot2.1整合Mybatis-Generator以及tk.mybatis

    1:添加依赖 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http ...