4 回答

TA贡献2065条经验 获得超14个赞
有很多方法可以做到这一点,用numpy, pandas, simplecoroutines等等。我正在添加最接近您的方法的一个。
total = 0
with open('exmplefile.txt','r') as f:
for line in f:
elements = line.split(';')
num_of_interest = int(elements[1])
# you can add a print if you want
total += num_of_interest
print(total)

TA贡献1862条经验 获得超6个赞
此解决方案是通过获取常用术语的第一个和第二个索引,在这种情况下为;。
with open(filename,'r') as file:
file_list = file.readlines()
sum = 0
for line in file_list:
loc = line.find(';')
first_loc = loc + 1
last_loc = loc +line[loc+1:].find(';')+1
sum = sum + int(line[first_loc:last_loc])
print(sum)

TA贡献1829条经验 获得超13个赞
此解决方案适用于当 4 位不是数组中的第二项时
with open("path/to/file") as f:
f1 = f.readlines()
sum = 0
for line in f1:
lineInArray = line.split(';')
for digit in lineInArray:
if len(digit.strip()) == 4 and digit.strip().isnumeric():
sum += int(digit)

TA贡献1815条经验 获得超10个赞
尝试这个
mylist = []
for string in file:
mynum = string.split(';')[1]
mylist.append(mynum)
sum([int(i) for i in mylist])
添加回答
举报