簡體   English   中英

添加兩個列表的元素

[英]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.

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