Python類與物件實驗

2022-05-30 22:06:13 字數 2436 閱讀 3490

本實驗任務主要對python類與物件進行一些基本操作,通過完成本實驗任務,要求學生熟練掌握python類與物件的關係,並對python類與物件的基本操作進行整理並填寫工作任務報告。

1、掌握python類的建立

2、掌握類物件

ubuntu16.04、python2.7

物件導向最重要的概念就是類(class)和例項(instance),必須牢記類是抽象的模板,比如student類,而例項是根據類建立出來的乙個個具體的「物件」,每個物件都擁有相同的方法,但各自的資料可能不同。

類是物件的模板或藍圖,類是物件的抽象化,物件是類的例項化。類不代表具體的事物,而物件表示具體的事物。

步驟1、環境準備

右擊ubuntu作業系統桌面,從彈出選單中選擇【open in terminal】命令 開啟終端。

通過【cd /home】切換到home目錄下。【ls】檢視該目錄下的所有內容。

圖1 切換目錄

【mkdir class】在home目錄下建立class資料夾。

圖2 建立資料夾

步驟2、類

【cd class】切換到class目錄下,【vim class1.py】回車後建立並編輯名為class1的python檔案

圖3 建立python檔案

回車後進入編輯框內,按鍵盤【i】進入編輯狀態,輸入如下程式。

在python中,定義類是通過class關鍵字。class後面緊接著是類名,即brid,類名通常是大寫開頭的單詞,緊接著是(object)。

用class關鍵字定義乙個類,類名為鳥(bird)。括號內的關鍵object,也就是『東西』的意思。既某乙個個體也為物件。乙個類別下,可以有多個物件。

圖4 編輯python檔案

直接定義在類內部的屬性為類屬性,為這個類物件所有,所有類的例項可以訪問。定義兩個量,乙個用於說明鳥類有羽毛(feather),另乙個用於說明鳥類的繁殖方式(reproduction),這兩個量成為類的屬性。

圖5 類屬性

除了用屬性來分辨類別外,也可以根據這類東西可以做什麼來區分,比如鳥會飛,這樣的一些行為屬性成為方法。通過在類的內部定義函式來說明方法。

在鳥類中新增乙個方法屬性,表示鳥叫的方法chirp(),第乙個引數是self,為了在方法內部引用物件自身。

圖6 方法

步驟3、物件

通過呼叫類,可以創造出這個類的物件。

說明summer屬於鳥類的乙個物件。

圖7 建立物件

作為物件的summer將擁有鳥類的屬性和方法。對屬性的引用是通過物件.屬性的形式實現的。

圖8 呼叫類屬性

編輯完畢後,按【esc】退出編輯狀態,【:wq】儲存並退出編輯框,【python class1.py】執行class1的python檔案。

列印『egg』,得到summer所屬類的繁殖方式。

圖9 執行python檔案

也可以呼叫方法,讓summer執行鳥類允許的動作。

再次進入class1.py檔案編輯狀態,修改程式。

圖10 編輯python檔案

再次執行class1.py程式。列印『jijiji』。

在呼叫方法時,只傳遞乙個引數,就是字元創『jijiji』,self只用在類定義的內部,所以呼叫方法時不需要對self傳入資料。

圖11 執行python檔案

對於全部個體來說,某些屬性存在個體差異,比如summer是黃色的,但並非所有的鳥都是黃色的,除了共性的屬性外,還需要說明個性的物件屬性,可以通過self來操作物件的屬性。

再次進入class1.py檔案編輯狀態,修改程式。

在set_color方法中,通過self引數設定物件屬性color,和類屬性一樣,通過物件.屬性的方式來操作物件屬性,由於物件屬性依賴於self,所以物件屬性沒辦法像類屬性一樣,在類下方賦值。

圖12 編輯python檔案

再次執行class1.py程式。列印『yellow』。

圖13 執行python檔案

python提供了初始化物件屬性的方法,如__init__()__add()__等,可以在類中設定特殊方法,__init__()方法會在每次建立物件時自動呼叫。

再次進入class1.py檔案編輯狀態,修改程式。

通過__init__()說明類的初始化方式。當物件建立時,__init__()會被呼叫,設定了sound的物件屬性,在chirp()方法中,就可以通過self呼叫物件屬性。

圖14 編輯python檔案

再次執行class1.py程式。

圖15 執行python檔案

self引數除了操作物件屬性外,還可以在一方法內部呼叫同一類的其他方法。

再次進入class1.py檔案編輯狀態,修改程式。

圖16 編輯python檔案

再次執行class1.py程式。重複列印『jijiji』5次。

圖17 執行python檔案

類與物件 實驗二

實驗目的 1 掌握類的建構函式和析構函式的概念和使用方法 2 掌握物件陣列 物件指標的定義和使用方法 3 掌握new和delete的使用方法 實驗內容 1 設計描述平面座標上的點cpoint類,該類滿足下述要求 具有x,y座標資訊 具有帶預設形參值的建構函式,引數分別用於初始化x和y座標資訊 具有獲...

實驗1 類與物件

宣告乙個cpu類,包含等級 rank 頻率 frequency 電壓 voltage 等屬性,有兩個公有成員函式run stop。其中,rank為列舉型別cpu rank,宣告為enum cpu rank p1 1,p2,p3,p4,p5,p6,p7 frequency為單位是mhz的整型數,vol...

C 實驗類與物件

桂 林 理 工 大 學 實 驗 報 告 實驗名稱 類與物件 日期 2018年 04 月17 日 一 實驗目的 1 掌握類的定義和使用。2 掌握類的物件的宣告。3 複習具有不同訪問屬性的成員的訪問方式。4 觀察建構函式和析構函式的執行過程。5 使用vc 的debug除錯功能觀察程式流程,跟蹤觀察類的建...