Python高階語法

2021-07-11 10:12:17 字數 1596 閱讀 3264

函式式

程式設計概念:要了解什麼是函式式程式設計 什麼是函式 這兩者的區別

高階函式的特點:能接收函式作為引數

注意:map

()是 python 內建的高階函式,它接收乙個函式 f和乙個list,並通過把函式 f 依次作用在 list 的每個元素上,得到乙個新的 list 並返回。

reduce()函式也是python內建的乙個高階函式。reduce()函式接收的引數和 map()類似,乙個函式 f

,乙個list,但行為和 map()不同,reduce()傳入的函式 f 必須接收兩個引數,reduce()對list的每個元素反覆呼叫函式f,並返回最終結果值。

filter()函式是 python 內建的另乙個有用的高階函式,filter()函式接收乙個函式 f和乙個list,這個函式 f 的作用是對每個元素進行判斷,返回 true或 false,filter()根據判斷結果自動過濾掉不符合條件的元素,返回由符合條件元素組成的新

list

sorte函式實現排序

返回函式的語法

閉包 防止呼叫

像這種內層函式引用了外層函式的變數(引數也算變數),然後返回內層函式的情況,稱為閉包(closure)

閉包的特點是返回的函式還引用了外層函式的區域性變數,所以,要正確使用閉包,就要確保引用的區域性變數在函式返回後不能變。舉例如下:

匿名函式

匯入模組

包==資料夾

模組==py.檔案

包內包含_int.py._the ide can take it as background。

帶入模組時

import math

單獨幾個函式

from math import pow, sin, log

*名字衝突時

python物件導向程式設計的意義

類 抽象資料型別 ----

例項 具體定義

定義類建立例項 重點在與資料封裝的思想

在類中定義方法:

class person(object):

count = 0    @classmethod

def how_many(cls):

return cls.count

def __init__(self, name):

self.name = name

person.count = person.count + 1

print person.how_many()

p1 = person('bob')

print person.how_many()

通過標記乙個,該方法將繫結到類上,而非類的例項。類方法的第乙個引數將傳入類本身,通常將引數名命名為,上面的 實際上相當於 。

因為是在類上呼叫,而非例項上呼叫,因此類方法無法獲得任何例項變數,只能獲得類的引用。

Python高階語法

最近重新看了網上的python教程,補充學習了一些之前用的較少的用法 字典 注意字典中 key 是亂序的,也就是說和插入 的順序是不一致的。如果想要使用順序一致的字典,請使用 collections 模組 中的 ordereddict 物件 迭代器 python 中的 for 句法實際上實現了設計模...

Python高階語法 函式

所謂函式就是乙個 塊,函式是組織好的,可重複使用的,用來實現單一,或相關聯功能的 段。二.匿名函式 三.map函式 四.reduce函式 五.filter函式 六.sort函式 七.幾種函式的舉例 def 函式名 引數 函式體 任何傳入引數和自變數必須放在圓括號中間,圓括號之間可以用於定義引數 傳的...

python 高階語法和除錯

zip 把兩個可迭代的內容生成乙個可迭代的tuple元素型別組成的內容 l1 1,2,3,4,5 l2 11,22,33,44,55 z zip l1,l2 print type z print z for i in z print i l1 dd ff zz l2 12,13,14 z zip l...