我是靠谱客的博主 雪白发卡,最近开发中收集的这篇文章主要介绍Python 自定义类Python定义类,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

Python定义类

car.py

#!/usr/local/bin/python3
"""Class Car and Class ElectricCar"""
class Car():
"""class Car includes 'Maker', 'Model', 'Year' and ‘Color’"""
def __init__(self, Maker, Model, Year):
self.Maker = Maker
self.Model = Model
self.Year = Year
def SetColor(self, Color):
self.Color = Color
def GetLongName(self):
return self.Maker + ' ' + self.Model + ' ' + str(self.Year)
def GetInfo(self):
return self.Maker, self.Model, self.Year, self.Color
class ElectricCar(Car):
"""class ElectricCar is based on class Car, with a new attribute 'Battery'"""
def __init__(self, Maker = 'Tesla', Model = 'Model 3', Year = 2020):
super().__init__(Maker, Model, Year)
self.SetBattery()
def SetBattery(self, Battery = 54.5):
self.Battery = Battery
self.SetRange()
return self.Battery
@property
def GetRange(self):
self.Range = int(self.Battery * 625 / 100)
return self.Range
if __name__ == '__main__':
# execute only if run as a script
def main():
mycar = Car('Audi', 'A6L', '2018')
print()
print(mycar.GetLongName())
mycar.SetColor('Black')
print(f'The color is %s.' % mycar.Color)
print(mycar.__doc__)
ecar = ElectricCar()
ecar.SetBattery()
print()
print(ecar.GetLongName())
print(f'The color is %s.' % mycar.Color)
print(f'The battery is %.1f kwh. The range is %d km.' % (ecar.Battery, ecar.Range))
# print(__file__)
# print(ecar.__class__)
# print(ecar.__module__)
# print(__name__)
# print(ecar.__doc__)
# print(__doc__)
main()

输出结果:


Audi A6L 2018
The color is Black.
class Car includes 'Maker', 'Model', 'Year' and ‘Color’
Tesla Model 3 2020
The color is Black.
The battery is 54.5 kwh. The range is 340 km.

car2.py

from car import Car, ElectricCar
if __name__ == "__main__":
def main():
mycar = Car('Audi', 'A8L', '2020')
mycar.SetColor('White')
print(mycar.GetInfo())
# ecar = ElectricCar('Tesla', 'Model S', 2016)
ecar = ElectricCar()
ecar.SetColor('Red')
ecar.SetBattery(100)
print(ecar.GetLongName())
print(ecar.GetInfo())
print(ecar.Battery)
print(ecar.Range)
main()

 输出结果:

('Audi', 'A8L', '2020', 'White')
Tesla Model 3 2020
('Tesla', 'Model 3', 2020, 'Red')
100
625

 

最后

以上就是雪白发卡为你收集整理的Python 自定义类Python定义类的全部内容,希望文章能够帮你解决Python 自定义类Python定义类所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(45)

评论列表共有 0 条评论

立即
投稿
返回
顶部