假设我有这样一些.csv
数据:
query, score1, score2, score3
kobe bryant,0,3,1,
ccny,1,1,2,
lego,3,1,0,
disney,4,0,0,
power rangers,2,0,2,
britney spears,2,0,2,
backstreet boys,2,1,1,
soccer,3,0,1,
justin beaver,2,0,2,
new york knicks,2,1,1
把分数加起来后,我希望得到如下结果:
score1 = 10; score2 = 4; score3 18;
我该怎么把这些分开,再加起来呢?你知道吗
以下是我目前掌握的情况:
import random
def getScores():
# open files to read
web = open("page.txt", "r");
img = open("image.txt", "r");
# scores for each search engine results
gScore = 0;
bScore = 0;
yScore = 0;
webDict = [];
imgDict = [];
# split by ','
tmp = img.read().split(",");
for i in range(0, len(tmp)-4, 4):
gScore = gScore + int(tmp[i+1]);
bScore = bScore + int(tmp[i+2]);
yScore = yScore + int(tmp[i+3]);
print "gScore is: ", gScore, "\n";
print "bScore is: ", bScore, "\n";
print "yScore is: ", yScore, "\n";
tmp = web.read().split(",");
for i in range(0, len(tmp)-4, 4):
gScore = gScore + int(tmp[i+1]);
bScore = bScore + int(tmp[i+2]);
yScore = yScore + int(tmp[i+3]);
print "gScore is: ", gScore, "\n";
print "bScore is: ", bScore, "\n";
print "yScore is: ", yScore, "\n";
if __name__ == "__main__":
getScores();
这将加起来所有的分数,但我有困难创建一个dict从数据。你知道吗
我的意思是这样的:
bigList = [ 'query':{score1:int, score2:int, score3:int}, 'query2':{score1:int, score2:int, score3:int}... and so on];
我先用逗号把字符串分开:
len(parts)
应该是4
的倍数,否则可以引发异常:然后像这样做:
我明白了
在逗号处拆分后,可以很容易地在一行中进行处理:
data[::4]
部分从数据中选取每4项,从每种类型分数的适当偏移量开始。然后将每种类型转换为整数并求和。你知道吗相关问题 更多 >
编程相关推荐