我是python新手,我试图从一个文件中获取数据,将其放入一个列表,然后得到每行的总和。我尝试剥离列表中除int和float之外的任何内容,并确保文件中只有数字。如果有人能帮助我,我将非常感激。谢谢你的阅读
(问题代码)
with open("InputFileData.csv") as file:
SampleTotalHours = file.readlines();
TotalHours = []
for element in SampleTotalHours:
TotalHours.append(element.strip())
Sum = sum(TotalHours[0])
print(Sum)
(内容“InputFileData.csv”)
40.1,39.7,40,38
36,36,35.5,35.8
40,41.6,40.3,40
20.4,22.8,20,20
(产出)
Traceback (most recent call last):
File "D:\Assignment 6 Files\PAtest.py", line 10, in <module>
Sum = sum(TotalHours[0])
TypeError: unsupported operand type(s) for +: 'int' and 'str'
有点像这样。对于每一行,在逗号处拆分,将字段转换为浮点数,求浮点数之和。您可能会发现使用
csv
模块更容易,但使用此数据集并不会给您带来太多好处这对我来说很好:
readlines()
将返回字符串列表,本例中的第一项是“40.1,39.7,40,38”。 要获取和,首先需要用分隔符拆分字符串,并在获取和之前将每个值转换为浮点数TotalHours
是一个列表,其中每个值都是其对应行的总和相关问题 更多 >
编程相关推荐