1. 程式人生 > >【Python】創建和使用類

【Python】創建和使用類

自動運行 over 多個實例 引用 bottom color ack 小寫 運行

面向對象編程是最有效的軟件編寫方法之一

創建Dog類

class Dog():
    ‘‘‘一次模擬小狗的簡單測試‘‘‘

    def __init__(self,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!")

1.在這裏我們定義了一個Dog類,在Python中,首字母大寫的名稱指的是類

2.方法__init__()是一個特殊的方法,每當你根據Dog類創建新實例時,Python會自動運行它,在這個方法中,開頭和結尾有兩個下劃線,這是一種約定,旨在避免Python默認方法與普通方法發生沖突,在此方法中又是那個形參,參數self必不可少,還必須位於其他形參的前面,Python調用這個方法來創建Dog實例時,將自動傳入實參self,每個與類相關聯的方法調用都自動傳遞實參self,它是一個指向實例本身的引用,讓實例能夠訪問類中的屬性和方法。self會自動傳遞,只需要傳入後面兩個形參(name和age)

3.self.name,以self為前綴的變量都可提供類中的所有方法使用,我們可以通過類的任何實例來訪問這些變量,self.name = name 獲取存儲在形參name中的值,並將其存儲到變量name中,然後該變量被關聯到當前創建的實例。像這種可以通過實例訪問的變量稱為屬性。

根據類創建實例

my_dog = Dog(Lucy,3)

print("My dog‘s name is " + my_dog.name +".")
print("My dog is " + str(my_dog.age) +" years old.")

我們通常可以認為手寫字母大寫的指的是類,小寫的名稱指的是類創建的實例

1.調用方法

my_dog = Dog(Lucy,3)
my_dog.sit()
my_dog.roll_over()

print("My dog‘s name is " + my_dog.name +".")
print("My dog is " + str(my_dog.age) +" years old.")

2.創建多個實例

my_dog = Dog(Lucy,3)
your_dog =Dog(Michile,4)


print("My dog‘s name is " + my_dog.name +".")
print("My dog is " + str(my_dog.age) +" years old.")
my_dog.sit()

print("your dog‘s name is " + your_dog.name +".")
print("your dog is " + str(your_dog.age) +" years old.")
your_dog.sit()
在這個實例中,我們創建了2條小狗,他們分別名為Lucy跟Michile.每條小狗都是一個獨立的實例,擁有自己的屬性。

【Python】創建和使用類