Python——(面向物件程式設計)類和例項
本文絕大部分內容轉載至:廖雪峰官方網站
面向物件最重要的概念就是類(Class)和例項(Instance),必須牢記類是抽象的模板,比如Student
類,而例項是根據類創建出來的一個個具體的“物件”,每個物件都擁有相同的方法,但各自的資料可能不同。
仍以Student
類為例,在Python中,定義類是通過class
關鍵字:
class Student(object):
pass
class
後面緊接著是類名,即Student
,類名通常是大寫開頭的單詞,緊接著是(object),表示該類是從哪個類繼承下來的,繼承的概念我們後面再講,通常,如果沒有合適的繼承類,就使用object
類,這是所有類最終都會繼承的類。
定義好了Student
類,就可以根據Student
類創建出Student
的例項,建立例項是通過類名+()實現的:
>>> bart = Student()
>>> bart
<__main__.Student object at 0x10a67a590>
>>> Student
<class '__main__.Student'>
可以看到,變數bart
指向的就是一個Student
的例項,後面的0x10a67a590
是記憶體地址,每個object
(物件)的地址都不一樣,而Student
本身則是一個類。
由於類可以起到模板的作用,因此,可以在建立例項的時候,把一些我們認為必須繫結的屬性強制填寫進去。通過定義一個特殊的__init__
name
,score
等屬性綁上去:
class Student(object):
def __init__(self, name, score):
self.name = name
self.score = score
注意到__init__
方法的第一個引數永遠是self
,表示建立的例項本身,因此,在__init__
方法內部,就可以把各種屬性繫結到self
,因為self
就指向建立的例項本身。
有了__init__
方法,在建立例項的時候,就不能傳入空的引數了,必須傳入與__init__
方法匹配的引數,但self
不需要傳,Python直譯器自己會把例項變數傳進去:
>>> bart = Student('Bart Simpson', 59)
>>> bart.name
'Bart Simpson'
>>> bart.score
59
和普通的函式相比,在類中定義的函式只有一點不同,就是第一個引數永遠是例項變數self
,並且,呼叫時,不用傳遞該引數。除此之外,類的方法和普通函式沒有什麼區別,所以,你仍然可以用預設引數、可變引數、關鍵字引數和命名關鍵字引數。
相關推薦
Python——(面向物件程式設計)類和例項
本文絕大部分內容轉載至:廖雪峰官方網站 面向物件最重要的概念就是類(Class)和例項(Instance),必須牢記類是抽象的模板,比如Student類,而例項是根據類創建出來的一個個具體的“物件”,每個物件都擁有相同的方法,但各自的資料可能不同。 仍以St
18.python面對物件程式設計(一)—什麼是面向物件,類和例項,訪問限制
終於開始了python的核心內容了,前面都是細枝末節的小東西。先開始第一個話題,什麼是面向物件的程式設計(opp)。1)什麼是面向物件我們可以拿C語言這個典型的面向過程的程式語言來對比,面對同樣一個問題,”我吃飯“(原諒我是個吃貨)。面向過程關注的是吃這個動作。而面向物件關注
Python面向物件(定義類和建立物件)
day24 http://www.cnblogs.com/wupeiqi/p/4493506.html Python:函式式+面向物件,函數語言程式設計可以做所有事,但是不一定合適。 小明,10歲,男,上山去砍柴 小明,10歲,男,開車去東北 老李,90歲,男,上山去砍柴 老李,
JAVASE之面向物件程式設計--類和物件1
1.面向物件程式設計正規化(c++,java.Go)--能進行現實生活的抽象--狗吃糧 每個物件--類 屬性以及方法 OOA: 面向物件分析 OOP:面向物件程式設計 OOD:面向物件設計 面向物件三大特徵:***** a.封裝性
MATLAB面向物件程式設計類和物件的建立
在此之前對面向物件程式設計瞭解不多,更不用說MATLAB面向物件程式設計。不過,在第一份工作的經歷中還是遇到過一點使用,只是那時候我還不是很清楚。那一次使用是為了實現Simulink中模型的使用。 今天簡單做一個類的構建以及物件的建立。首先實現一個類
Python面向物件程式設計——類、物件、屬性、方法示例程式碼
習題九 一、 閱讀以下關於平面座標處理的程式碼: class Coordinate(object): def __init__(self, x, y): self.x = x self.y = y de
Python面向物件程式設計——類的學習
面向物件程式設計面向物件程式設計——Object Oriented Programming,簡稱OOP,是一種程式設計思想。OOP把物件作為程式的基本單元,一個物件包含了資料和操作資料的函式。 面向過程的程式設計把計算機程式視為一系列的命令集合,即一組函式的順序執行。為
C++面向物件程式設計——類和物件(個人整理)
物件: object 客觀世界中任何一個事物都可以看成一個物件,如自然物體(汽車,房子,班級...) 可以看到一個班級作為一個物件有兩個要素: 1、班級所屬系和專業,人數等靜態特徵(屬性); 2、班
Java基礎筆記整理---【07】面向物件程式設計-類和物件
int 型別預設值為 0 String型別預設值為null 方法(函式):返回值 方法名(引數型別 引數名稱, ...){方法體(程式碼塊)}this指呼叫的方法中(當前)的變數類與物件1.構造方法:1> 構造物件 構造例項的方法,一個特殊方法,方法名需要與類名相同,
python 面向物件程式設計:類和例項
深度學習在構建網路模型時,看到用類來構建一個模型例項,清晰明瞭,所以這篇博文主要學習一下python類 類和例項: 類可以起到模板的作用,因此,可以在建立例項的時候,把一些我們認為必須繫結的屬性強制填寫進去。通過定義一個特殊的__init__(注意:特殊方法“__init__”前後分別有
Python面向物件程式設計(類和例項 訪問限制 繼承和多型 獲取物件資訊 例項屬性和類屬性)
面向物件程式設計——Object Oriented Programming,簡稱OOP,是一種程式設計思想。OOP把物件作為程式的基本單元,一個物件包含了資料和操作資料的函式。 資料封裝、繼承和多型是面向物件的三大特點 在Python中,所有資料型別都可以視
python面向物件中類物件、例項物件、類變數、例項變數、類方法、例項方法、靜態方法
1. 類物件和例項物件 Python中一切皆物件,Python類本身也是一種物件,類定義完成後,會在當前作用域中定義一個以類名為名字的名稱空間。類物件具有以下兩種操作: 可以通過“類名()”的方式例項化一個物件。 可以通過“類名.類屬性”的方式來訪問一個類屬性。
面向物件程式設計-類變數與例項變數
1 class Role(object):#執行時之後就存在記憶體裡 2 n='我是類裡的n' #類變數,儲存在類的記憶體裡 3 list=[] 4 name='我是類裡的name' 5 def __init__(self,name,role,weapon,li
【java】面向物件程式設計——類與物件的繼承和多型
一、程式碼塊 程式碼塊定義:使用 {} 定義的一段程式碼。 根據程式碼塊定義的位置以及關鍵字,又可分為以下四種: 普通程式碼塊(定義在方法中,除錯) 構造塊(定義在類中的(不加修飾符)) 靜態塊 同步程式碼塊 構造塊 構造塊在每次產生一個新的物件就呼叫一次構
Python基礎筆記_Day10_Python面向物件、類和物件、__init__、__str__、訪問限制、set、get
Day10_Python面向物件、類和物件、init、str、訪問限制、set、get 10.01_Python語言基礎(面向物件思想)(理解) 10.02_Python語言基礎(類和物件)(掌握) 10.03_Python語言基礎(類的構成)(掌握) 10.04_Python語言基礎(
[Python]面向物件程式設計---例項(3)
三、例項 1、__init__() "構造器"方法 當類被呼叫,例項化的第一步是建立例項物件,一旦物件建立了,Python檢查是否實現了__init__()方法。 (1) 如果沒有定義或覆蓋__init__(),則不對例項做任何操作,返回它的物件,例項化過程完畢。
python面向物件程式設計例項:飛機大戰
說明:此則部落格只是自己學習python程式設計的學習記錄,其中完成的程式設計只是飛機大戰的小小小demo,只為自己熟悉python語言和pygame,所以程式並不完善,只當練手和記錄,當然可基於次程式進行後續的完善開發。最後感謝一下hm的python教程。至於程式中的圖片
Python 進階_OOP 面向物件程式設計_self 的例項繫結
目錄 self 和繫結 在 Python 中 self 變數是特殊的, 其用於在例項方法中引用該方法所繫結的例項, 換句話說就是 Python 在例項化物件時會自動的將例項物件傳遞到類體的 self 變數中, 類體中的 self 變數代表了該類的例
python學習筆記05-python面向物件程式設計
1.面向物件程式設計 1. 類和例項 注意,類的所有方法,的第一個引數一定是self。 在呼叫類的方法時,不需要傳入第一個引數self。 #!/usr/bin/env python # -*- coding: utf-8 -*- #定義一個類Student,繼承自
030_面向物件_03_類和物件的關係
一、概念介紹 a)類:許多相似或相同事物的綜合、.用於性質或特徵相同或相似的事物,此處我們所說的類是對物件的一種抽象。 b)物件:指行動或思考時作為目標的一個具體事物,從認識論角度考慮是先有物件後有類。比如學生這個物件 c)抽象:從具體事物抽出、概括出它們共同的方面、本質屬性與關係等,而將個