2 回答
TA贡献1827条经验 获得超8个赞
简短的回答
csv.reader 读入字符串。您可以通过使用一些类型转换来解决这个问题:
import csv
file = open("reads.csv", "r")
reader = csv.reader(file)
for line in reader:
value0 = line[0]
value1 = line[1]
value2 = int(line[0]) + int(line[1])
t = value0,value1,value2
print(t)
以上,我假设您的数据是整数格式。如果数据是浮点格式,你会想使用 float() 代替。
建议改进
一般来说,我建议使用以下内容:
import csv
with open("reads.csv", "r") as file:
reader = csv.reader(file)
column_numbers = [0,1]
for line in reader:
t = sum(int(line[i]) for i in column_numbers)
print(t)
这将在代码块执行后自动关闭文件,避免以后出错。列号也以数组的形式给出,以便您以后可以轻松地将它们换掉。
TA贡献1848条经验 获得超6个赞
尝试以下将读取中的字符串转换为整数的方法:
import csv
f = open("inputdata.csv", "a")
f.write("1,2,3,4,5")
f.write("6,7,8,9,10")
f.write("11,12,13,14,15")
f.close()
file=open( "inputdata.csv", "r")
reader = csv.reader(file)
for line in reader:
value0=int(line[0])
value1=int(line[1])
value2=int(line[0])+int(line[1])
t=value0,value1,value2
print(t)
输出:
(1, 2, 3)
(6, 7, 13)
(11, 12, 23)
添加回答
举报