簡體   English   中英

如何使用Python將列表項從另一個列表中除以列表項?

[英]How to divide list item by list item from another list using Python?

我想在兩個列表中划分列表項。

a = [[1, 0, 2], [0, 0, 0], [1], [1]]
b = [[5, 6, 4], [6, 6, 6], [3], [3]]

如何將a除以b來獲得此輸出:

c = [[0.2, 0, 0.5], [0, 0, 0], [0.333], [0.333]]

誰能幫我?

壓縮兩個列表並使用列表解析:

from __future__ import division   # in python2 only
result = [[x/y for x,y in zip(xs, ys)] for xs, ys in zip(a, b)]

樣品運行:

In [1]: a = [[1, 0, 2], [0, 0, 0], [1], [1]]
   ...: b = [[5, 6, 4], [6, 6, 6], [3], [3]]
   ...: 

In [2]: result = [[x/y for x,y in zip(xs, ys)] for xs, ys in zip(a, b)]

In [3]: result
Out[3]: [[0.2, 0.0, 0.5], [0.0, 0.0, 0.0], [0.3333333333333333], [0.3333333333333333]]

使用itertools.izip (Python2.7):

import itertools

[[float(aaa) / bbb for (aaa, bbb) in itertools.izip(aa, bb)] \
    for (aa, bb) in itertools.izip(a, b)]
from __future__ import division # for Python2

[[x / y for x, y  in zip(*item)] for item in zip(a, b)]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM