最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python中abs&map&reduce簡介

 更新時(shí)間:2018年02月20日 10:48:42   作者:wander-clouds  
map與reduce是兩個(gè)十分常用的Python內(nèi)置函數(shù),它們與Hadoop中的MapReduce在某些方面有一定的相似之處。

abs函數(shù)

可以把函數(shù)本身賦值給變量
>>> f = abs
變量可以指向函數(shù)
>>> f = abs
>>> f(-10)
10
abs函數(shù)實(shí)際上是定義在import builtins模塊中的,所以要讓修改abs變量的指向在其它模塊也生效,要用import builtins; builtins.abs = 10

傳入函數(shù)
一個(gè)函數(shù)接收另一個(gè)函數(shù)作為參數(shù),這種函數(shù)就稱之為高階函數(shù)。

def add(x, y, f):
return f(x) + f(y)

當(dāng)我們調(diào)用add(-5, 6, abs)時(shí),參數(shù)x,y和f分別接收-5,6和abs,根據(jù)函數(shù)定義,我們可以推導(dǎo)計(jì)算過程為:

x = -5
y = 6
f = abs
f(x) + f(y) ==> abs(-5) + abs(6) ==> 11

map

map()函數(shù)接收兩個(gè)參數(shù),一個(gè)是函數(shù),一個(gè)是Iterable,
map將傳入的函數(shù)依次作用到序列的每個(gè)元素,并把結(jié)果作為新的Iterator返回

>>> def f(x):
... return x * x
...
>>> r = map(f, [1, 2, 3, 4, 5, 6, 7, 8, 9])
>>> list(r)
[1, 4, 9, 16, 25, 36, 49, 64, 81]

map()傳入的第一個(gè)參數(shù)是f,即函數(shù)對象本身
通過list()函數(shù)讓它把整個(gè)序列都計(jì)算出來并返回一個(gè)list
把這個(gè)list所有數(shù)字轉(zhuǎn)為字符串:

>>> list(map(str, [1, 2, 3, 4, 5, 6, 7, 8, 9]))
['1', '2', '3', '4', '5', '6', '7', '8', '9']

reduce

reduce把一個(gè)函數(shù)作用在一個(gè)序列[x1, x2, x3, ...]上。
這個(gè)函數(shù)必須接收兩個(gè)參數(shù),
reduce把結(jié)果繼續(xù)和序列的下一個(gè)元素做累積計(jì)算,其效果就是:

reduce(f, [x1, x2, x3, x4]) = f(f(f(x1, x2), x3), x4)

把序列[1, 3, 5, 7, 9]變換成整數(shù)13579,reduce就可以派上用場:

>>> from functools import reduce
>>> def fn(x, y):
... return x * 10 + y
...
>>> reduce(fn, [1, 3, 5, 7, 9])
13579

相關(guān)文章

  • python+selenium實(shí)現(xiàn)登錄賬戶后自動點(diǎn)擊的示例

    python+selenium實(shí)現(xiàn)登錄賬戶后自動點(diǎn)擊的示例

    本篇文章主要介紹了python+selenium實(shí)現(xiàn)登錄賬戶后自動點(diǎn)擊的示例,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-12-12
  • 分享vim python縮進(jìn)等一些配置

    分享vim python縮進(jìn)等一些配置

    本篇文章給大家分享了vim python縮進(jìn)等一些配置的相關(guān)知識點(diǎn),有需要的朋友可以參考下。
    2018-07-07
  • python?beautifulsoup4?模塊詳情

    python?beautifulsoup4?模塊詳情

    本文主要介紹了python?beautifulsoup4模塊詳情,BeautifulSoup4是一款python解析庫,主要用于解析HTML和XML,在爬蟲知識體系中解析?HTML?會比較多一些,下文更多相關(guān)內(nèi)容,需要的小伙伴可以參考一下
    2022-05-05
  • Python常用Web框架Django、Flask與Tornado介紹

    Python常用Web框架Django、Flask與Tornado介紹

    這篇文章介紹了Python常用Web框架Django、Flask與Tornado,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-05-05
  • python教程對函數(shù)中的參數(shù)進(jìn)行排序

    python教程對函數(shù)中的參數(shù)進(jìn)行排序

    這篇文章主要介紹了python教程對函數(shù)中的參數(shù)進(jìn)行排序的方法講解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2021-09-09
  • Python如何定義有默認(rèn)參數(shù)的函數(shù)

    Python如何定義有默認(rèn)參數(shù)的函數(shù)

    這篇文章主要介紹了Python如何定義有默認(rèn)參數(shù)的函數(shù),幫助大家更好的理解和學(xué)習(xí)Python,感興趣的朋友可以了解下
    2020-08-08
  • 用tensorflow搭建CNN的方法

    用tensorflow搭建CNN的方法

    本篇文章主要介紹了用tensorflow搭建CNN的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-03-03
  • pandas中df.groupby()方法深入講解

    pandas中df.groupby()方法深入講解

    在使用pandas進(jìn)行數(shù)據(jù)統(tǒng)計(jì)分析時(shí)遇到了問題,找了很久才找到解決辦法,所以下面這篇文章主要給大家介紹了關(guān)于pandas中df.groupby()方法的相關(guān)資料,需要的朋友可以參考下
    2022-12-12
  • 詳解Python裝飾器的四種定義形式

    詳解Python裝飾器的四種定義形式

    裝飾器(decorator)在Python框架中扮演著重要角色,是Python中實(shí)現(xiàn)切面編程(AOP)的重要手段,這篇文章主要介紹了Python裝飾器的四種定義形式,需要的朋友可以參考下
    2022-11-11
  • pandas取出重復(fù)數(shù)據(jù)的方法

    pandas取出重復(fù)數(shù)據(jù)的方法

    今天小編就為大家分享一篇pandas取出重復(fù)數(shù)據(jù)的方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-07-07

最新評論

平南县| 东乌珠穆沁旗| 象山县| 涟水县| 耿马| 通州市| 寿宁县| 玉树县| 乌拉特前旗| 德阳市| 焦作市| 寿宁县| 高碑店市| 丰台区| 离岛区| 思南县| 宁陵县| 金坛市| 巴楚县| 通江县| 弋阳县| 乐亭县| 青海省| 育儿| 任丘市| 无棣县| 荥经县| 昌乐县| 丰台区| 南汇区| 县级市| 延吉市| 宜川县| 鹤山市| 嘉义县| 新和县| 上虞市| 南岸区| 新兴县| 双柏县| 文安县|