[英]Dividing elements of one list by elements of another list
我有一個列表A=[1, 1, 1, 1]
和B=[2, 3, 4, 5]
,我想定義C=[50%, 33%, 25%, 20%]
(即我將 A 的每個元素除以 B 的相應元素,然后將每個元素乘以 100 以獲得百分比)。
當試圖找出如何進行除法時,我遇到了: 將一個列表的元素除以另一個列表的元素,但這種情況比我需要的要復雜得多,所以我真的很困惑。
提前致謝!
C = [a/b*100 for a, b in zip(A,B)]
c = [a / b * 100 for (a, b) in zip(A, B)]
您可以使用自己的類和 dunder function 抽象出您的操作:
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]
試試這個:
for i in range(len(A)):
A[i] = str(A[i]/B[i] * 100) + "%"
將其轉換為字符串.... xx%
result = ["%.0f%%"%(a*100 / b) for a, b in zip(A, B)]
# ['50%', '33%', '25%', '20%']
注意:如果你不想四舍五入這個數字,
result = ["%.d%%"%(a*100 / b) for a, b in zip(A, B)]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.