我尽量不像我的老师那样使用csv
模块,我认为,我在强调如何使用这种简单的迭代方法。我知道他键入casted或更改了一些int,以便添加csv文件总数。该文件的语法是(name("string"(,grade(int((作为csv。这是csv文件的一行:Andrew,69,52,32,83,22,33,77,34
当然,它是用逗号分隔的。我已经能够在没有标题的情况下打印出数字,但我缺少了一些能够将分数相加的东西。我现在得到的错误是:
TypeError: unsupported operand type(s) for +: 'int' and 'str'
我现在的代码是:
f = open("lab0604.csv","r+")
f.readline()
for line in f:
x = line.split(",")
for i in x:`
print(sum(i[2:]))
任何关于如何解决这个问题的想法都将不胜感激。我还是SO格式规则的新手,所以我知道我的缩进有点偏离,但我知道这不是缩进。谢谢你的帮助。我想这只是一个演员阵容,让我在正确的地方失踪。再次感谢你对我的帮助。
更好的方法-
f = open("lab0604.csv","r+")
f.readline()
for line in f:
x = line.split(",")
for i in x:`
grades = 0
for i in mylist:
if type(i) == type(0):
grades = i + grades
print(grades)
列表理解(一行或几乎一行(-
for i in x:
a = [b for b in mylist if type(b) == type(0)]
print(sum(a))
f = open("lab0604.csv", "r+")
f.readline()
for line in f:
x = line.split(",")
print(sum(int(number) for number in x[1:])) # the first element`s index is 0