python--从入门到实践--chapter 9 类
类的定义格式:
class Name(Father_class):def __init__(self, para, ...):self.para = xdef __init__(self, para, ...):super().__init__(para, ...) #调用父类的构造函数
class Car():def __init__(self,make,model,year): #构造函数self.make = makeself.model = modelself.year = yearself.odometer_reading = 0def get_descriptive_name(self):long_name = str(self.year) + ' ' + self.make + ' ' + self.modelreturn long_name.title()def read_odometer(self):print('This car has ' + str(self.odometer_reading) + ' miles on it.')def update_odometer(self,mileage):if mileage >= self.odometer_reading:self.odometer_reading = mileageelse:print('You can not roll back an odometer!')def increment_odometer(self, miles):if miles < 0:print('You can cheat me! driving miles < 0')else:print('driving this car ' + str(miles) + 'miles')self.odometer_reading += milesdef fill_gas_tank(self):print('This car need fill gas !')class Battery():def __init__(self, battery_size=70): #构造函数,带默认参数值self.battery_size = battery_sizedef describe_battery(self):print('This car has a ' + str(self.battery_size) + '-KWh battery.')def upgrade_battery(self):if self.battery_size != 85:self.battery_size = 85print("battery update successfully !")def get_range(self):if self.battery_size == 70:range = 240elif self.battery_size == 85:range = 270message = 'This car can go approximately ' + str(range)message += ' miles on a full charge.'print(message)class ElectricCar(Car): #类的继承def __init__(self, make, model, year):super().__init__(make, model, year) #调用父类初始化函数初始化父类成员self.battery = Battery() #新的成员,一个Battery对象def fill_gas_tank(self):# super().fill_gas_tank()print('This car doesn\'t need a gas tank!')my_tesla = ElectricCar('tesla','model s', 2019)
print(my_tesla.get_descriptive_name())
my_tesla.battery.describe_battery()
my_tesla.fill_gas_tank()
my_tesla.battery.get_range()
my_tesla.battery.upgrade_battery()
my_tesla.battery.get_range()
python--从入门到实践--chapter 9 类相关推荐
- Python从入门到实践习题答案(第九章 类)
在学习<Python从入门到实践>,代码是自己编写的噢(虽然有些代码有参考其他大佬),点个赞再走8~ 9-1 餐馆:创建一个名为 Restaurant 的类,其方法__init__()设置 ...
- python从入门到实践13章答案
系列文章目录 python从入门到实践12章答案 python从入门到实践14章答案 目录 前言 一.13-1星星 二.13-2更逼真的星星 三.13-3雨滴 四.13-4连绵细雨 五.13-5 侧 ...
- python从入门到实践和从入门到精通-Python从入门到实践之列表|第1天
User:你好我是森林 Date:2018-02-14 Mark:<Python从入门到实践> 列表 本章主要从列表的概念入手,逐步深入到对列表的操作. 列表 概念 列表由一系列按特定顺序 ...
- Python数据挖掘入门与实践-OneR分类算法
Python数据挖掘入门与实践-OneR分类算法 OneR算法 OneR算法是根据已有的数据中,具有相同特征值的个体最可能属于哪个类别进行分类. 在本例中,只需选区Iris是个特征中分类效果最好的一个 ...
- Python从入门到实践第9章课后作业
Python从入门到实践第9章课后作业 编写过程中不知道如何将列表传入子类中,下面实例中均没有使用 #9-1 # class Restaurant(): # """模拟饭 ...
- 《Python程序设计入门与实践》219道课后习题答案
适用教材:Python程序设计入门与实践 I S B N:978-7-5606-5960-2 作 者:董付国 页 数:319页 例题数量:73个 演示代码:200段(不含例题代码) 习题数 ...
- Python从入门到实践
Python从入门到实践 文章目录 Python从入门到实践 第2章 变量和简单的数据类型 2.2 变量的命名规则 2.3 字符串 2.4 数字 1.整数 2.浮点数 3.使用str( )避免类型错误 ...
- python从入门到实践19章答案
目录 前言 一.博客 1.建立项目 2.创建应用程序 3.Django管理网站 4.让用户输入数据 二.博客账户 1.应用程序users 2.登录页面 3.注销 4.注册页面 三.重构 四.保护页面n ...
- 《Python从入门到实践》读书笔记——第五章 if语句
<Python从入门到实践>读书笔记--第五章 if语句 1. 一个简单示例 cars = ['audi', 'bwm', 'subaru', 'toyota']for car in ca ...
最新文章
- R语言dplyr包通过数据列的索引重命名数据列实战(Rename Column by Index Position)
- eclipse java代码某一行需要修改注释_看看这些Java代码开发规范吧!你好,我好,大家好!...
- 《超越需求:敏捷思维模式下的分析》—第1章 1.1节简介
- 《看聊天记录都学不会C语言?太菜了吧》(5)打了一把游戏我学会了一个编程知识?
- 互联网原理和html基础,计算机网络基础知识习题及答案(八)
- HDU 2602 Bone Collector 0/1背包
- Mac 上使用vim 快捷键
- Duplicate Net Names Wire Net......
- 简单说一下寄存器寻址
- 为什么银行的现钞买入价低于现汇买入价?
- 为什么uzi排到古手羽就秒_Uzi排到古手羽秒退,网友争相发表看法,直播间弹幕疑似给出答案...
- java合并word文档和添加分节符
- html制作古诗网页早发白帝城,《早发白帝城》古诗词
- dalao的tajan模板
- 2018滴滴校招(秋招)内推笔试编程题题解
- 傅小兰研究员是学报第一任女主编吗?
- win7连接sftp_Windows下用sftp巧妙打造安全传输
- gl linux qt 库_Linux下Qt应用程序的发布(使用LDD命令查看所有依赖的库文件)
- 问题:现有12个外形相同的小球,只有其中一个小球质量不同(不能确定较重还是较轻),请用天平找出是哪个小球不同,而且还要找出究竟是轻是重?条件:只能称三次
- 中兴二面(综合面试及口语测评)
热门文章
- C语言中auto,register,extern,static【转】
- Unable to install pirate
- Python进程学习笔记-multiprocessing模块
- Python 实现微信小程序的用户登录
- Sub-process /usr/bin/dpkg returned an error code (1)解决办法
- 010. 使用.net框架提供的属性
- 工厂方法模式及php实现
- Everyday is an Opportunity
- .NET中得到计算机硬件信息
- Atmospheric Scattering