您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關怎么使用python面向對象編程,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
類是面向對象程序設計的一部分。面向對象程序設計或者簡稱為 OOP 致力于創建可重用代碼塊稱之為類。當你想在你的程序中使用類時,你會從類中創建一個對象,這也是面向對象一詞的由來。Python 并不總是面向對象的,但是你會在你的項目中用到對象。為了理解類,你需要理解面向對象的一些基礎術語。
常用術語
class:類。類是代碼塊的主體,其中定義了建立的模型的屬性和行為。這個模型可以來自于真實世界,也可以是虛擬游戲等。
attribute:屬性。是一系列信息的集合。在類中,一個屬性通常是一個變量。
behavior:行為。行為是定義在類中,組成方法的部分。也即是定義在類中函數的一部分。
method:方法。類中的函數,由 behavior 組成。
object:對象。對象是類的實例。一個對象中包含所有類中屬性的值。你可以為一個類創建任意數量的對象。
近距離觀察 Rocket 類
我們已經了解到一些類的基本術語,讓我們回頭再分析一下上節提到的 Rocket 類。
__init__() 方法
定義一個初始代碼塊,如下所示:
class Rocket(): # Rocket simulates a rocket ship for a game, # or a physics simulation. def __init__(self): # Each rocket has an (x,y) position. self.x = 0 self.y = 0
第一行展示了類是如何創建的。關鍵字 class 告訴 Python 準備定義一個類。類名的命名規則和變量的相同,但是 Python 中有一個約定好的規則,類名必須是駝峰式的。也即每個單詞的開頭必須是大寫的,不允許下劃線的出現。類名后緊跟一對圓括號,目前為止圓括號里都是空的,接下來的學習中,其中可能會包含一個類。這個類是新類基于的類。
前后都有兩個下劃線的函數是內置在 Python 中的有特殊用途的函數。__init__() 函數就是一個特殊的函數。當創建一個類的對象時,它會自動執行。我們可以稱之為初始化函數,在對象使用之前初始化一些必要的屬性。在這個例子中,__init__() 函數初始化了 x 和 y 屬性。
關鍵字 self 可能會有些難以理解。單詞 "self" 指向當前的對象。當你創建一個類時,它可以訪問到類中的任意指定屬性。基本上,類中所有的函數都需要 self 對象作為第一個參數,因此它們就可以訪問類中的屬性。
現在,讓我們看看類中的方法吧!
一個簡單的方法
下述代碼在 Rocket 類中定義了一個方法。
class Rocket(): # Rocket simulates a rocket ship for a game, # or a physics simulation. def __init__(self): # Each rocket has an (x,y) position. self.x = 0 self.y = 0 def move_up(self): # Increment the y-position of the rocket. self.y += 1
方法就是類中的函數。因此你可以在方法中做任何函數能做的事。
默認情況下,每個函數都需要接受一個參數:self 。它是對調用這個方法的對象的引用。self 參數能讓你訪問到調用對象的屬性。在這個例子中,self 用來訪問 Rocket 對象的 y 屬性。這個方法被調用一次,對象的 y 屬性就增加1。為了更近一步了解方法的運行過程,仔細閱讀下述代碼,并觀察它們的輸出。
class Rocket(): # Rocket simulates a rocket ship for a game, # or a physics simulation. def __init__(self): # Each rocket has an (x,y) position. self.x = 0 self.y = 0 def move_up(self): # Increment the y-position of the rocket. self.y += 1 # Create a Rocket object, and have it start to move up. my_rocket = Rocket() print("Rocket altitude:", my_rocket.y) my_rocket.move_up() print("Rocket altitude:", my_rocket.y)
創建多個對象
面向對象編程一個重要目標是創建可重用代碼。一旦你寫好了類,就能創建任意數量的對象。通常,類被放進一個單獨的文件中,在需要的時候導入程序中。因此你可以創建一個類庫,在不同的程序中重復使用這些類。
在一個類上創建多個對象,示例如下:
class Rocket(): # Rocket simulates a rocket ship for a game,# Rocket # or a physics simulation. def __init__(self): # Each rocket has an (x,y) position. self.x = 0 self.y = 0 def move_up(self): # Increment the y-position of the rocket. self.y += 1 # Create a fleet of 5 rockets, and store them in a list. my_rockets = [] for x in range(0,5): new_rocket = Rocket() my_rockets.append(new_rocket) # Show that each rocket is a separate object. for rocket in my_rockets: print(rocket)
以上就是怎么使用python面向對象編程,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。