第五周筆記

2021-09-19 01:21:55 字數 1962 閱讀 5686

函式中包含yield語句的函式就是生成器函式,呼叫返回生成器物件.

yield 是個表示式,可以返回值.

生成器表示式

m = (i for i in range(10))

生成器的應用

1,無限迴圈

2,計數器

3,斐波那契數列

4,生成器互動

5,協程coroutine

lambda構建匿名函式

定義(lambda 引數:表示式)(實參)

可以沒有引數,冒號後面不能出現等號.

返回常量的值

print( ( lambda:0 ) ( ) )

高階函式

[x for x in (lambda *arg:map(lambda x: x+1,arg))(*range(6))]
[x for x in (lambda *arg:map(lambda x: (x+1,arg),arg))(*range(6))]

[(1, (0, 1, 2, 3, 4, 5)),

(2, (0, 1, 2, 3, 4, 5)),

(3, (0, 1, 2, 3, 4, 5)),

(4, (0, 1, 2, 3, 4, 5)),

(5, (0, 1, 2, 3, 4, 5)),

(6, (0, 1, 2, 3, 4, 5))]

lambda x :(x+1,arg) # 意思是生成乙個二元元組,如果換成就是生成二元列表.
map方法

map()用某種函式的方法對可迭代物件進行操作.如高階函式.

非線性結構

是n個元素的集合高階函式

高階函式至少要滿足下面條件中的乙個

接受乙個或多個函式作為引數

輸出乙個函式。

過濾函式filter

定義:filter(function,iiterable)

對可迭代物件進行遍歷,返回乙個迭代器。

function函式是乙個引數的函式,且返回值應當是bool型別,或者返回值等效布林值。

如果function引數是none,則過濾掉等效none的值。

否則過濾出符合函式的值。

對映map

返回乙個迭代器

定義map(function,*可迭代物件(可變位置引數))

當傳入乙個 可迭代物件時,按照function方法計算可迭代物件值,然後返回。

如果傳入兩個 例如:

list(map(lambda x,y :(x,y),"abcdef",range(6)))

[('a', 0), ('b', 1), ('c', 2), ('d', 3), ('e', 4), ('f', 5)]

乙個簡單的裝飾器

import datetime

import time

# print(datetime.datetime.now())

def logger(fn):

def swap(*args,**kwargs):

start = datetime.datetime.now()

time.sleep(2)

ret = fn(*args,**kwargs)

deltime = (datetime.datetime.now()-start).total_seconds()

print("tool".format(deltime))

return ret

return swap

@logger

def add(x,y):

return x+y

python文件字串

在函式語句塊的第一行用三引號寫多行文字。

慣例首字母大寫,第一行寫概述,空一行,第三行寫詳細描述。

可以使用—doc—這個屬性訪問該文件。

functools模組

第五周周記

第五周周記 本週完成了 1.html的網頁設計作業,學習了標籤 用 製作網頁 製作表單站點等。2.學習了資料結構的順序表和鏈式表的動態儲存和應用,以及如何寫 3.學習了ps 選單的部分功能。4.學會了繪製一張網路拓撲圖。希望能夠更加努力,收穫成長。週數專業學習目標 專業學習時間 新增 量 部落格發表...

第五課第二週筆記

onehot轉換 def convert to one hot y,c y np.eye c y.reshape 1 return y def read glove vecs glove file with open glove file,r encoding utf8 as f words set...

第五次周記

恭喜202011班第二次籃球小組賽取得勝利!雖然無人在旁邊喝彩加油 估計天氣太冷大家都不願意出來 天氣轉寒 比賽中不斷有隊員腳抽筋,但最終還是打贏了!了不起!11班!我看完了全程籃球賽,抓拍了各種精彩瞬間 其中也不缺各種可製成表情包的 給我感受最深的大概就是打球真讓人暴躁啊,主要是場上的人都很暴躁 ...