本章學習python 類的建立以及如何使用
工程結構如下圖
'''"""一次模擬汽車的簡單嘗試"""
'''class battery():
"""一次模擬電動汽車電瓶的簡單嘗試"""
def __init__(self, battery_size=70):
"""初始化電瓶的屬性"""
self.battery_size = battery_size
def describe_battery(self):
"""列印一條描述電瓶容量的訊息"""
print("this car has a " + str(self.battery_size) + "-kwh battery.")
def __init__(self, make, model, year):
'''constructor
'''self.make = make
self.model = model
self.year = year
self.odometer_reading = 0
def get_descriptive_name(self):
long_name = str(self.year) + ' ' + self.make + ' ' + self.model
return 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 = mileage
else:
print("you can't roll back an odometer!")
def increment_odometer(self, miles):
self.odometer_reading += miles
class electriccar(car):
def __init__(self, make, model, year):
"""初始化父類的屬性"""
super().__init__(make,model,year)
self.battery_size = 70#新增新屬性
#新增新方法
def describe_battery(self):
"""列印一條描述電瓶容量的訊息"""
self.battery = battery()
print("this car has a " + str(self.battery_size) + "-kwh battery.")
#重寫父類的方法
my_tesla = electriccar('tesla', 'model s', 2016)
print(my_tesla.get_descriptive_name())
class car1():
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 = str(self.year) + ' ' + self.make + ' ' + self.model
return 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 = mileage
else:
print("you can't roll back an odometer!")
def increment_odometer(self, miles):
"""將里程表讀數增加指定的量"""
self.odometer_reading += miles
class dog:
def __init__(self,name,age):
'''初始化name和age'''
self.name = name
self.age = age
def sit(self):
print(self.name.title() + " is now sitting.")
def roll_over(self):
print(self.name.title() + " rolled over!")
my_dog = dog('willie', 6)
#使用類和例項
class car():
def _init_(self, make, model, year):
"""初始化描述汽車的屬性"""
self.make = make
self.model = model
self.year = year
def get_descriptive_name(self):
"""返回整潔的描述性資訊"""
long_name = str(self.year) + ' ' + self.make + ' ' + self.model
return long_name.title()
my_new_car = car('audi', 'a4', 2016)
print(my_new_car.get_descriptive_name())
#給屬性指定預設值
from car1 import car1
class mycar():
'''classdocs
'''my_new_car = car1('audi', 'a4', 2016)
print(my_new_car.get_descriptive_name())
my_new_car.odometer_reading = 23
my_new_car.read_odometer()
def __init__(self, params):
'''constructor
'''
python基礎5 函式
函式 函式的作用 函式 是用於對重複 塊的封裝,解決 重複的問題 語法 def 函式名 形式引數 函式體 重複 塊 return 資料 1.定義函式 不會執行函式體的 2.必須呼叫函式的時候才會執行封裝的 塊 呼叫語法 函式名 3 函式必須先定義 再呼叫 例 封裝乙個函式,實現99乘法表 defcf...
python基礎學習 5
第一種建立方式,直接使用小括號t 10,20,30,40,hello print t 10,20,30,40,hello 第二種建立方式,使用tuple 內建函式 t1 tuple 10,20,30,40,hello print t1 10,20,30,40,hello s print s 第二種建...
python基礎5 模組
模組 一 模組簡介 模組是乙個包含有定義的函式和變數的檔案,其字尾名是.py。python的強大之處在於他有非常豐富和強大的標準庫和第三方庫,幾乎你想實現的任何功能都有相應的python庫支援。標準庫一般在 安裝目錄 lib下,第三方庫一般存放在 安裝目錄 lib site packages下,此目...