[英]Adding elements of two lists
我正在嘗試在python中添加兩個列表。 第一個列表包含第一個測試的結果,第二個列表包含第二個測試的結果,我正在嘗試制作另一個包含總分的列表。 這是我的代碼:
import csv
with open ("UASHSDDP3efiles.csv", "r") as csvfile:
reader = csv.reader(csvfile)
list1 = []
for row in reader:
list1.append(row[1])
print (",".join(list1))
with open ("UASHSDDP3efiles.csv", "r") as csvfile:
reader = csv.reader(csvfile)
list2 = []
for row in reader:
list2.append(row[2])
print(",".join(list2))
list3 = [(x + y) for x, y in zip(list1, list2)]
print (list3)
到目前為止,我得到的輸出是:
>>> 55,25,40,21,52,42,19,47,37,40,49,51,15,32,4
51,36,50,39,53,33,40,57,53,34,40,53,22,42,13
['5551', '2536', '4050', '2139', '5253', '4233', '1940', '4757', '3753', '4034', '4940', '5153', '1522', '3242', '413']
那是因為您的list1和list2包含字符串類型的元素,並且這些元素被串聯起來而不是被添加。
因此,您應該在將元素追加到列表之前將其轉換為int ,或者通過再次遍歷整個列表將所有元素顯式轉換為int
您要添加兩個字符串,這就是為什么'55'
+ '51'
= '5551'
。
將它們強制轉換為整數以便將兩個數字相加:
list3 = [(int(x) + int(y)) for x, y in zip(list1, list2)]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.