python基礎 第七章 函式高階

2021-10-23 12:54:16 字數 1236 閱讀 9474

多型

這大致意味著即便你不知道變數指向的是哪種物件,也能夠對其執行操作,且操作的行為將隨物件所屬的型別(類)而異。

封裝

封裝(encapsulation)指的是向外部隱藏不必要的細節。

每個物件都屬於特定的類,並被稱為該類的例項。例如,如果你在窗外看到乙隻鳥,這只鳥就是「鳥類」的乙個例項。鳥類是乙個非常通用(抽象)的類。

建立自定義類

被呼叫時會被第乙個傳入的引數就是self

class person:

def set_name(self, name):

self.name = name

def get_name(self):

return self.name

def greet(self):

print("hello, world! i'm {}.".format(self.name))

類的命名空間

下面兩條語句大致等價:

def foo(x): return x * x

foo = lambda x: x * x

在 class 語句中定義的**都是在乙個特殊的命名空間(類的命名空間)內執行的,而類的所有成員都可訪問這個命名空間。

繼承

要確定乙個類是否是另乙個類的子類,可使用內建方法 issubclass 。

>>> issubclass(spamfilter, filter)

true

>>> issubclass(filter, spamfilter)

false

抽象基類

python通過引入模組 abc 提供了官方解決方案。這個模組為所謂的抽象基類提供了支援。一般而言,抽象類是不能(至少是不應該)例項化的類,其職責是定義子類應實

現的一組抽象方法。下面是乙個簡單的示例:

from abc import abc, abstractmethod

class talker(abc):

@abstractmethod #

def talk(self):

pass

形如 @this 的東西被稱為裝飾器,其用法將在第9章詳細介紹。

python第七章 python教程(第七章)

字典和集合 字典是python中唯一,乙個對映型別 如何建立乙個字典,如下 dict dict 滲透 網路安全 怎麼理解字典呢?現實生活中的字典可以通過首字母進行查詢要查詢的漢子,python也可以這樣理解,通過 前的元素查詢到冒號後的元素。為什麼說字典是唯一乙個對映型別呢?看圖。對映型別區別與序列...

第七章 函式

1.ansi c 允許函式原型的使用,函式宣告提供給編譯器和之後的呼叫函式返回值型別,引數型別和數量的資訊,而k c用單獨的列表給出引數的型別,編譯器只記住函式的返回值型別,但不儲存函式的引數數量和型別 2.沒有return語句的函式,隱式的返回 3.函式的原型可以單獨放於乙個標頭檔案中,一定要具有...

第七章 函式

樂趣在於發現。程式設計最大的樂趣在於編寫自己的函式 使用c 函式步驟 1.函式定義 2.函式原型 3.呼叫函式 函式分為兩類 有返回值和沒有返回值的函式。void函式表示沒有返回值 void funcitonname parameterlist include using namespace std...