【Python学习】导入类
# _*_ coding:utf-8 _*_
"""
name:zhangxingzai
date:2022/11/20
form:《Python编程从入门到实践》
"""
# 一个可用于表示汽车的类
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't roll back an odometer!")def increment_odometer(self, miles):"""将里程表读数增加指定的量"""self.odometer_reading += milesclass Battery:"""一次模拟电动汽车电瓶的简单尝试"""def __init__(self, battery_size=60):"""初始化电瓶的属性"""self.battery_size = battery_sizedef describe_battery(self):"""打印一条描述电瓶容量的消息"""print("This car has a " + str(self.battery_size) + "-kWh battery.")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()
9.4.2 导入模块中的类
from car import Car, ElectricCar
my_tesla = ElectricCar('tesla', 'model s', 2016)
print(my_tesla.get_descriptive_name())my_new_car = Car('audi', 'a4', 2016)
print(my_new_car.get_descriptive_name())
9.4.3 导入整个模块
import carmy_beetle = car.Car('volkswagen', 'beetle', 2016)
print(my_beetle.get_descriptive_name())
my_tesla = car.ElectricCar('tesla', 'model s', 2016)
print(my_tesla.get_descriptive_name())
9.4.4 导入模块中的所有类
from module_name import *
不推荐使用这种导入方式 这种导入方式没有明确地指出你使用了模块中的哪些类。 还可能引发名称方面的困惑。如果你不小心导入了一个与程序文件中其 他模块同名的类,将引发难以诊断的错误。 需要从一个模块中导入很多类时,最好导入整个模块,并使用module_name.class_name语法来访问类。小结: 类的导入跟函数的导入使用方法一样,详细可以参考《函数_导入模块和编写指南》
【Python学习】导入类相关推荐
- python之导入类
作者:从未止步- 博客主页:从未止步的博客 专栏:和我一起学Python 语录:Every day is a second chance 行动是理想最高贵的表达 ,给大家介绍一款超牛的斩获大厂offe ...
- Python 学习笔记 类的封装 类的继承 多态继承 类方法和静态方法 单例设计模式
一.类的封装: 1.概念: 广义的封装:函数和类的定义本身,就是封装的体现 狭义的封装:一个类的某些属性,在使用的过程 中,不希望被外界直接访问,而是把这个属性给作为私有的[只有当前类持有],然后暴露 ...
- python 动态导入类_从动态导入模块中类的字符串名动态实例化?
tl:博士 使用importlib.import_module导入根模块,并使用getattr函数按名称加载类:# Standard import import importlib # Load &q ...
- python如何导入类里_Python导入模块中的所有类(98)
要导入模块中的每个类,可使用下面的语法: from mod import * 不推荐使用这种导入方式,其原因有二.首先,如果只要看一下文件开头的import语句,就能清楚地知道程序使用了哪些类,将大有 ...
- 廖雪峰Python学习笔记——类和实例
Class MyList(list): __metaclass__ = ListMetaclass #它表示在创建MyList这个类时,必须通过 ListMetaclass这个元类的LIstMetac ...
- python学习笔记——类
# coding='utf-8'class User():def __init__(self,name,sex):self.name = nameself.sex = sexprint '这里是构造函 ...
- Python学习笔记④——类、面向对象的三大特征 [封装+继承+多态]
✅ Blogger Learns Python is for learning the "Deep Learning". 文章目录 一.面向对象编程的简介 二.类与对象 -- 基础 ...
- Python学习(类的属性、继承、覆盖等详解)
Tips:如果是从基础部分一路跟着过来的朋友,需要告诉你们的是我偷偷吧编程工具PyCharm装上了,今天算是进入面向对象编程环节.本人使用的编程工具是PyCharm,未安装的可以先去官网下载安装.下面 ...
- python设计一个长方形类_类设计模式python学习~元类
废话就不多说了,开始... 元类是类的模版,在类的层次上标准类的行为. 面下用使元类现实单例设计模式(设计模式九 采取的是另一种方法): from warnings import * 每日一道理 坚持 ...
- Python学习:类与实例
面向对象最重要的概念就是类(Class)和实例(Instance),必须牢记类是抽象的模板,比如Student类 而实例是根据类创建出来的一个个具体的"对象",每个对象都拥有相同的 ...
最新文章
- 源码安装tensorflow
- 【算法】哈希表 ( 两数之和 )
- Python入门100题 | 第030题
- java8 java9 接口 interface
- 原理分析_生化分析仪原理结构及参数对比
- CSS属性之attr()
- Hive 导数据到本地(2种方式)
- SBT, activator, play之間的糾葛
- volatile关键字与synchronization关键字的区别?
- 括号匹配算法Java实现
- Windows Xp 优化文件 的一段BAT代码
- 使用微信小程序生成海报
- 同比和环比分别是什么,一分钟告诉你。
- 不同时区时间换算_世界时区划分时差在线查询计算_时间换算器
- exports is not defined
- 体力活动水平的计算机软件著作权查询,软件著作权被竞争对手抢先,著作权保护的客体对象是谁?...
- bzoj-1270 [BeijingWc2008]雷涛的小猫
- ios开发——实用技术篇Block/KVO/通知/代理
- 分页符怎么删除,word不要的页面删不掉
- 华为nova2连不上计算机,华为nova2正式发布,连个5G WIFI都不支持?