看板 Python 關於我們 聯絡資訊
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://www.ptt.cc/bbs/Python/M.1541681383.A.324.html
adrianshum: Zip 了再做 list comprehension 11/08 20:56
adrianshum: result = [ (a*b)**c for a,b,c in zip(list_a, list_ 11/08 20:58
adrianshum: b, list_c) ] 之類 11/08 20:58
謝謝回覆! ※ 編輯: jkkert (122.146.71.224), 11/08/2018 21:27:45
djshen: 面試也不用什麼高階寫法吧 11/08 21:36
jason860421: 用numpy的話 11/08 21:36
jason860421: (A*B)**C 就好了 11/08 21:37
s860134: 沒分啥高階寫法  11/08 22:48
Mchord: 這跟我幫公司出的好像啊… 11/08 23:01
s860134: 也可以用 reduce 來達成就是了 11/08 23:22
mikapauli: list(map(int.__pow__, 11/09 06:33
mikapauli: map(int.__mul__, listA, listB), listC)) 11/09 06:33
JinLime: list(map(lambda a,b,c: (a*b)**c, listA,listB,listC) 11/09 13:00
JinLime: ) 11/09 13:01
Angesi: 無意義 因為第一元素 (0*0)^0為不定型 故其值不存在! 11/10 08:51
Angesi: 抱歉~ 學藝不精 其值為1正確! 11/10 14:02
Angesi: 可以參考https://reurl.cc/XWWae 11/10 14:03
Angesi: 有興趣的人 可以把x^x微分 可微分一定連續且極值存在 11/10 14:04
ijoeyshow: [listA[i]*listB[i]*listC[i] for i in range(len(lis 11/12 11:08
ijoeyshow: tA))] 11/12 11:08
ijoeyshow: 看錯哈哈 最後的運算子改成^吧 11/12 11:10