Python基礎 姿勢 5

2021-08-13 10:15:04 字數 3731 閱讀 5960

本章學習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下,此目...