提问者:小点点

将一个列表的元素除以另一个列表的元素


我有一个列表a=[1,1,1,1]B=[2,3,4,5],我想定义c=[50%,33%,25%,20%](即我将a的每个元素除以B的相应元素,然后将每个元素乘以100得到百分比)。

当我试图找出如何进行划分时,我遇到了:将一个列表的元素划分为另一个列表的元素,但这种情况比我需要的要复杂得多,所以我真的很困惑。

提前谢谢!


共3个答案

匿名用户

C = [a/b*100 for a, b in zip(A,B)]

匿名用户

c = [a / b * 100 for (a, b) in zip(A, B)]

匿名用户

您可以用自己的类和dunder函数抽象您的操作:

class AdvancedList(list):

    def __truediv__(self, other):
        result = [x / y for x, y in zip(self, other)]
        return result


A = AdvancedList([1, 1, 1, 1])
B = AdvancedList([2, 3, 4, 5])
print(A / B)

从而产生

[0.5, 0.3333333333333333, 0.25, 0.2]