《python学习笔记打卡–面向对象开始》
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
前言
提示:这里可以添加本文要记录的大概内容:
例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。
提示:以下是本篇文章正文内容,下面案例可供参考
一、导入模块的几种方法以及意思?
代码如下:
# 导入定义的其他类
# import car 导入整个模块
# from car import Car 导入car模块中的Car类
# from car import * 导入car模块中的所有
二、使用步骤
1.定义类的代码示例
class Car:
def __init__(self, make, model, year):
"""初始化描述汽车的属性"""
self.make = make
self.model = model
self.year = year
self.odometer_reading = 0
def get_descriptive_name(self):
"""返回格式规范的描述性信息"""
long_name = f"{self.year} {self.make} {self.model}"
return long_name.title()
def read_odometer(self):
"""打印一条指出汽车行驶里程的消息"""
print(f"This car has {self.odometer_reading} miles on it")
def update_odometer(self, mileage):
"""将里程表设置为指定的值
禁止将里程读数往回调
"""
if mileage >= self.odometer_reading:
self.odometer_reading += mileage
else:
print("You can't roll back an odometer!")
# 定义子类继承父类的属性和方法
class ElectricCar(Car):
"""电动汽车的独特之处"""
def __init__(self, make, model, year):
"""初始化父类的属性"""
super().__init__(make, model, year)
# 子类的一个特有属性
# self.battery_size = 40
# 类的组合示例
self.battery = Battery()
def describle_battery(self):
"""打印一条描述电池容量的消息"""
print(f"This car has a {self.battery_size}-kwh battery.")
# 类的组合示例
class Car:
def __init__(self, make, model, year):
"""初始化描述汽车的属性"""
self.make = make
self.model = model
self.year = year
self.odometer_reading = 0
def get_descriptive_name(self):
"""返回格式规范的描述性信息"""
long_name = f"{self.year} {self.make} {self.model}"
return long_name.title()
def read_odometer(self):
"""打印一条指出汽车行驶里程的消息"""
print(f"This car has {self.odometer_reading} miles on it")
def update_odometer(self, mileage):
"""将里程表设置为指定的值
禁止将里程读数往回调
"""
if mileage >= self.odometer_reading:
self.odometer_reading += mileage
else:
print("You can't roll back an odometer!")
# 定义子类继承父类的属性和方法
class ElectricCar(Car):
"""电动汽车的独特之处"""
def __init__(self, make, model, year):
"""初始化父类的属性"""
super().__init__(make, model, year)
# 子类的一个特有属性
# self.battery_size = 40
# 类的组合示例
self.battery = Battery()
def describle_battery(self):
"""打印一条描述电池容量的消息"""
print(f"This car has a {self.battery_size}-kwh battery.")
# 类的组合示例
class Battery:
"""一次模拟电动汽车电池的简单尝试"""
def __init__(self, battery_size=40):
"""初始化电池的属性"""
self.battery_size = battery_size
def describe_battery(self):
"""打印一条描述电池容量的消息"""
print(f"This car has a {self.battery_size}-kwh battery")
def get_range(self):
"""打印一条消息,指出电池的续航里程"""
if self.battery_size == 40:
range = 150
elif self.battery_size == 65:
range = 225
print(f"This car can go about {range} miles on a full charge")
2.调用类的代码示例
# 导入定义的其他类
# import car 导入整个模块
# from car import Car 导入car模块中的Car类
# from car import * 导入car模块中的所有
my_new_car = Car('audi', 'a4', 2024)
print(my_new_car.get_descriptive_name())
my_new_car.odometer_reading = 23
my_new_car.read_odometer()
三.总结
1.Python 3 Module of the Week 要了解 Python 标准库,⼀个很不错的资源是⽹站 Python 3 Module of the Week。请访问该⽹站并查看其中的⽬录,找⼀个你感兴趣的模块进⾏探索,从模块 random开始可能是个不错的选择。
2.导入类的几种方法。
3.要记住子类的函数与父类同名,则会覆盖父类函数的功能。上述代码也有python 类的重名和组合。