Python程式設計從入門到實踐筆記 類

2022-05-21 09:51:09 字數 4363 閱讀 9046

python程式設計從入門到實踐筆記——類

#

coding=gbk

#python程式設計從入門到實踐筆記——類

#9.1建立和使用類

#1.建立dog類

class dog():#

類名首字母大寫

"""一次模擬小狗的簡單嘗試

"""def

__init__

(self,name,age):

"""初始化屬性name和age

"""self.name =name

self.age =age

defsit(self):

"""模擬小狗被命令時蹲下

"""print(self.name.title() + "

is now sitting.")

defroll_over(self):

"""模擬小狗被命令時打滾

"""print(self.name.title() + "

rolled over!")

#__init__()是乙個特殊的方法,每當根據dog類建立新例項時,python都會自動執行它。

#在這個方法的名稱中,開頭和末尾各有兩個下劃線,這是一種約定,旨在避免python預設方法與普通方法發生名稱衝突。

#方法__init__()定義成了包含三個形參:self、name和age。在這個方法的定義中,形參self必不可少,還必須位於其他形參的前面。

#python呼叫這個__init__()方法來建立dog例項時,將自動傳入實參self。每個與類相關聯的方法呼叫都自動傳遞實參self,它是乙個指向例項本身

#的引用, 讓例項能夠訪問類中的屬性和方法。 我們建立dog 例項時,python將呼叫dog類的方法__init__() 。

#我們將通過實參向dog()傳遞名字和年齡;self會自動傳遞,因此我們不需要傳遞它。每當我們根據dog類建立例項時,都只需給最後兩個形參(name 和age )提供值。

#2.根據類建立例項

my_dog = dog('

willie

',6)

print("

my dog's name is

" + my_dog.name.title() + "

and he is

"+ str(my_dog.age) + "

years old.")

#訪問屬性 .

my_dog.name

#呼叫方法

my_dog.sit()

#建立多個例項

my_dog = dog('

willie

',6)

your_dog = dog('

lucy

',7)

#9.2使用類和例項

#1.car類

class

car():

"""一次模擬汽車的簡單嘗試

"""def

__init__

(self, make, model, year):

"""初始化描述汽車的屬性

"""self.make =make

self.model =model

self.year =year

#新增屬性odometer_reading,並設定預設值為0

self.odometer_reading =0

defget_odometer(self):

print("

this car has

" + str(self.odometer_reading) + "

miles on it.")

defset_odometer(self,mileage):

self.odometer_reading =mileage

defget_descriptive_name(self):

"""返回整潔的描述性資訊

"""long_name = str(self.year) + '

' + self.make + '

' +self.model

return

long_name.title()

my_new_car = car('

audi

', '

a4l', 2016)

print

(my_new_car.get_descriptive_name())

my_new_car.get_odometer() #

2.給屬性指定預設值

#3.修改屬性的值

#直接修改

my_new_car.odometer_reading = 23my_new_car.get_odometer() #

通過方法修改

#def set_odometer(self,mileage)

my_new_car.set_odometer(35)

my_new_car.get_odometer() #

9.3繼承

#建立子類的時候,父類必須包含在當前檔案中,且位於子類的前面。

#定義子類的時候,必須在括號內指定父類的名稱。

#方法__init__()接受建立car例項所需的資訊

#super()幫助python將父類和子類關聯起來。

class

battery():

def__init__(self, battery_size=70):

self.battery_size =battery_size

defdescribe_battery(self):

print("

this car has a

"+ str(self.battery_size) + "

-kwh battery.")

#1.子類的方法__init__()

class

electriccar(car):

def__init__

(self, make, model, year):

super().

__init__

(make, model, year)

self.battery_size = 70self.battery =battery()

defdescribe_battery(self):

print("

this car has a

" + str(self.battery_size) + "

-kwh battery.")

deffill_gas_tank(self):

print("

this car doesn't need a gas tank!")

my_tesla = electriccar('

teala

', '

model s

', 2016)

print

(my_tesla.get_descriptive_name()) #

2.給子類定義屬性和方法

my_tesla.describe_battery() #

3.重寫父類的方法:取其精華,去其糟粕

#def fill_gas_tank(self):

my_tesla.fill_gas_tank() #

4.將例項用作屬性

#class battery():

my_tesla.battery.describe_battery() #

9.4匯入類

#1.匯入單個類

#開啟模組dog(這裡我為了方便在dog.py中寫的內容),並匯入其中的car類

from dog import

car

my_new_car = car('

audi

','a4

',2016)

print

(my_new_car.get_descriptive_name()) #

在乙個模組中儲存多個類:直接在模組中編寫多個類

#從乙個模組中匯入多個類

from dog import

car, battery #

匯入整個模組

import

dog #

匯入模組中的所有類

#from module_name import *

#在乙個模組中匯入另乙個模組

#9.5python標準庫

#9.6類編碼風格

#類名:駝峰命名法(大駝峰),不適用下劃線

#例項名和模組名:小駝峰,單詞之間加下劃線

#每個模組都應包含乙個文件字串

#空行的使用:在類中使用乙個空行來分割方法;在模組中,使用兩個空行來分割類

#匯入標準庫中的模組和自己編寫的模組,先導入標準庫,空行,匯入自己的模組

Python 程式設計 從入門到實踐

1.官網安裝 3.環境配置 務必選中核取方塊add python to path 4.檢視 啟動python版本的命令 python 執行 print hello python world 5.終端執行x.py檔案 python x.py 7.檢視當前目錄中的所有檔案的命令 dir windows系...

Python程式設計從入門到實踐 基礎入門

python程式設計從入門到實踐 基礎入門 1 python中的變數 2 python首字母大寫使用title 方法,全部大寫upper 方法,全部小寫lower 方法 3 python中字串拼接使用 號 4 python中刪除字串的空格 刪除末尾空格的rstrip 刪除開頭空格的lstrip 刪除...

Python程式設計 從入門到實踐 1

內容總結自 python程式設計 從入門到實踐 安裝python3 安裝文字編輯器sublime text並配置python3環境 安裝sublime text tools new build system 將 untitled.sublime build 文件中的所有內容刪除,輸入以下內容 注意,...