[問題] 兩個list相乘 輸出表格

看板Python作者 (Wii好棒ㄚ>///<)時間7年前 (2018/06/16 22:49), 編輯推噓4(4015)
留言19則, 8人參與, 7年前最新討論串1/1
各位前輩好 我使用的python版本為3.6 環境為windows 10 Anaconda裡面的jupyter 最近練習時遇到一個問題描述如下: 如何將兩個list相乘後輸出成下列表格? list_a = [a,b,c,d,e] list_b = [A,B,C,D,E] a b c d e A Aa Ab Ac Ad Ae B Ba Bb Bc Bd Be C Ca Cb Cc Cd Ce D Da Db Dc Dd De E Ea Eb Ec Ed Ee 目前只能做到相乘成為一個新的list 程式碼如下: list_c = [] for a in list_a: for b in list_b[::-1]: c = a * b list_c.append(c) print (list_c) 請問這個解決方法該如何修正? 謝謝! -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.35.31.72 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1529160593.A.4BB.html

06/16 23:42, 7年前 , 1F
for A in list_A:
06/16 23:42, 1F

06/16 23:42, 7年前 , 2F
list_C.append([A * b for b in list_B])
06/16 23:42, 2F

06/16 23:52, 7年前 , 3F
print(list_B)
06/16 23:52, 3F

06/16 23:52, 7年前 , 4F
for row, C in zip(list_A, list_C):
06/16 23:52, 4F

06/16 23:52, 7年前 , 5F
print(row, C)
06/16 23:52, 5F

06/16 23:54, 7年前 , 6F
一定要求對齊的話就把print的地方改用str格式化輸出
06/16 23:54, 6F

06/17 00:11, 7年前 , 7F
感謝您 另外在請問 如果公式不是簡單的 c =a *b
06/17 00:11, 7F

06/17 00:11, 7年前 , 8F
而是需要多行運算的話 要如何處理? 謝謝!
06/17 00:11, 8F

06/17 06:05, 7年前 , 9F
回樓上、可以用map
06/17 06:05, 9F

06/17 06:23, 7年前 , 10F
謝謝您 我往這方向研究看看
06/17 06:23, 10F

06/17 10:21, 7年前 , 11F
矩陣相加:https://goo.gl/mBTbdR
06/17 10:21, 11F

06/17 10:22, 7年前 , 12F
矩陣相乘:https://goo.gl/GJw24S
06/17 10:22, 12F

06/17 10:24, 7年前 , 13F
覺得這用numpy解會比較好 但如果要練習當然另當別論
06/17 10:24, 13F

06/17 10:40, 7年前 , 14F
請問T大如用numpy有建議該往哪個方向嗎?謝謝
06/17 10:40, 14F

06/17 14:54, 7年前 , 15F
如果想單純用 built-in function 完成可以參考看看:htt
06/17 14:54, 15F

06/17 14:54, 7年前 , 16F
ps://ideone.com/xAgCms
06/17 14:54, 16F

06/17 14:55, 7年前 , 17F

06/18 22:53, 7年前 , 18F
建議用numpy 但是建議兩種都做且比較速度
06/18 22:53, 18F

07/21 06:34, 7年前 , 19F
可以用 itertools 模組中的 product (直積)。
07/21 06:34, 19F
文章代碼(AID): #1R9IEHIx (Python)