1-5如何快速找到多個字典的公共鍵

image.png

sample(seq, n)從序列seq中選擇n個隨機且不相同的元素眼俊;

一般的方法意狠,但是效率不高

from random import randint, sample
# 隨機產(chǎn)生abcdefg球員中的3-6個人隨機進1-4個球
s1 = {x: randint(1, 4) for x in sample("abcdefg", randint(3, 6))}
s2 = {x: randint(1, 4) for x in sample("abcdefg", randint(3, 6))}
s3 = {x: randint(1, 4) for x in sample("abcdefg", randint(3, 6))}

res = []
for k in s1:
    if k in s2 and k in s3:
        res.append(k)

解決方法

image.png

map函數(shù)

map(function, iterable, ...) 函數(shù)會根據(jù)提供的函數(shù)對指定序列做映射。
第一個參數(shù) function 以參數(shù)序列中的每一個元素調(diào)用function 函數(shù)疮胖,返回包含每次 function 函數(shù)返回值的新列表环戈。

# 計算平方數(shù)
def square(x) :            
   return x ** 2
map(square, [1,2,3,4,5])   

# 使用 lambda 匿名函數(shù)
map(lambda x: x ** 2, [1, 2, 3, 4, 5])  
# [1, 4, 9, 16, 25]

# 提供了兩個列表,對相同位置的列表數(shù)據(jù)進行相加
map(lambda x, y: x + y, [1, 3, 5, 7, 9], [2, 4, 6, 8, 10])
# [3, 7, 11, 15, 19]

reduce函數(shù)

reduce(function, iterable) 函數(shù)會對參數(shù)序列中元素進行累積澎灸。
函數(shù)將一個數(shù)據(jù)集合(鏈表院塞,元組等)中的所有數(shù)據(jù)進行下列操作:用傳給reduce中的函數(shù) function(有兩個參數(shù))先對集合中的第 1、2 個元素進行操作性昭,得到的結(jié)果再與第三個數(shù)據(jù)用 function 函數(shù)運算拦止,最后得到一個結(jié)果。

# 求和
reduce(lambda x, y: x+y, [1,2,3,4,5]) 
# 15

最后

from random import randint, sample
from functools import reduce
# 隨機產(chǎn)生abcdefg球員中的3-6個人隨機進1-4個球
s1 = {x: randint(1, 4) for x in sample("abcdefg", randint(3, 6))}
s2 = {x: randint(1, 4) for x in sample("abcdefg", randint(3, 6))}
s3 = {x: randint(1, 4) for x in sample("abcdefg", randint(3, 6))}

res = reduce(lambda a, b: a & b, map(dict.keys, [s1, s2, s3]))
print(res)
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市汹族,隨后出現(xiàn)的幾起案子萧求,更是在濱河造成了極大的恐慌,老刑警劉巖顶瞒,帶你破解...
    沈念sama閱讀 217,907評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件夸政,死亡現(xiàn)場離奇詭異,居然都是意外死亡搁拙,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,987評論 3 395
  • 文/潘曉璐 我一進店門法绵,熙熙樓的掌柜王于貴愁眉苦臉地迎上來箕速,“玉大人,你說我怎么就攤上這事朋譬⊙尉ィ” “怎么了?”我有些...
    開封第一講書人閱讀 164,298評論 0 354
  • 文/不壞的土叔 我叫張陵徙赢,是天一觀的道長字柠。 經(jīng)常有香客問我,道長狡赐,這世上最難降的妖魔是什么窑业? 我笑而不...
    開封第一講書人閱讀 58,586評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮枕屉,結(jié)果婚禮上常柄,老公的妹妹穿的比我還像新娘。我一直安慰自己搀擂,他們只是感情好西潘,可當(dāng)我...
    茶點故事閱讀 67,633評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著哨颂,像睡著了一般喷市。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上威恼,一...
    開封第一講書人閱讀 51,488評論 1 302
  • 那天品姓,我揣著相機與錄音,去河邊找鬼箫措。 笑死缭黔,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的蒂破。 我是一名探鬼主播馏谨,決...
    沈念sama閱讀 40,275評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼附迷!你這毒婦竟也來了惧互?” 一聲冷哼從身側(cè)響起哎媚,我...
    開封第一講書人閱讀 39,176評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎喊儡,沒想到半個月后拨与,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,619評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡艾猜,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,819評論 3 336
  • 正文 我和宋清朗相戀三年买喧,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片匆赃。...
    茶點故事閱讀 39,932評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡淤毛,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出算柳,到底是詐尸還是另有隱情低淡,我是刑警寧澤,帶...
    沈念sama閱讀 35,655評論 5 346
  • 正文 年R本政府宣布瞬项,位于F島的核電站蔗蹋,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏囱淋。R本人自食惡果不足惜猪杭,卻給世界環(huán)境...
    茶點故事閱讀 41,265評論 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望妥衣。 院中可真熱鬧胁孙,春花似錦、人聲如沸称鳞。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,871評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽冈止。三九已至狂票,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間熙暴,已是汗流浹背闺属。 一陣腳步聲響...
    開封第一講書人閱讀 32,994評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留周霉,地道東北人掂器。 一個月前我還...
    沈念sama閱讀 48,095評論 3 370
  • 正文 我出身青樓,卻偏偏與公主長得像俱箱,于是被迫代替她去往敵國和親国瓮。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,884評論 2 354

推薦閱讀更多精彩內(nèi)容