作者jkkert (沙皮哥)
看板Python
標題[問題] 簡單面試問題
時間Thu Nov 8 20:49:38 2018
listA = [0,1,2,3,4]
listB = [0,1,2,3,4]
listC = [0,1,2,3,4]
計算 (elementA * elementB) ^ elementC 返回 listD (共五個值)
我只會用很蠢的for loop
想請問版上高手高階寫法該怎麼寫?
謝謝
--
jkkert:
https://imgur.com/JhKKuFX
jkkert:汪汪汪汪汪
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 122.146.71.224
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Python/M.1541681383.A.324.html
1F:→ adrianshum: Zip 了再做 list comprehension 11/08 20:56
2F:→ adrianshum: result = [ (a*b)**c for a,b,c in zip(list_a, list_ 11/08 20:58
3F:→ adrianshum: b, list_c) ] 之類 11/08 20:58
謝謝回覆!
※ 編輯: jkkert (122.146.71.224), 11/08/2018 21:27:45
4F:→ djshen: 面試也不用什麼高階寫法吧 11/08 21:36
5F:推 jason860421: 用numpy的話 11/08 21:36
6F:→ jason860421: (A*B)**C 就好了 11/08 21:37
7F:→ s860134: 沒分啥高階寫法 11/08 22:48
8F:→ Mchord: 這跟我幫公司出的好像啊… 11/08 23:01
9F:→ s860134: 也可以用 reduce 來達成就是了 11/08 23:22
10F:→ mikapauli: list(map(int.__pow__, 11/09 06:33
11F:→ mikapauli: map(int.__mul__, listA, listB), listC)) 11/09 06:33
12F:→ JinLime: list(map(lambda a,b,c: (a*b)**c, listA,listB,listC) 11/09 13:00
13F:→ JinLime: ) 11/09 13:01
14F:推 Angesi: 無意義 因為第一元素 (0*0)^0為不定型 故其值不存在! 11/10 08:51
15F:→ Angesi: 抱歉~ 學藝不精 其值為1正確! 11/10 14:02
17F:→ Angesi: 有興趣的人 可以把x^x微分 可微分一定連續且極值存在 11/10 14:04
18F:推 ijoeyshow: [listA[i]*listB[i]*listC[i] for i in range(len(lis 11/12 11:08
19F:→ ijoeyshow: tA))] 11/12 11:08
20F:推 ijoeyshow: 看錯哈哈 最後的運算子改成^吧 11/12 11:10