虽然我已经学习了大部分基础知识,但我已经学习了大部分基础知识,但我已经学习了大部分基础知识,但是我需要能够从csv文件中读取(到目前为止工作),然后将此csv中的数据附加到正常工作的列表中,并且我不确定的部分是使用其中两个列表和/ 120和* 100
例如list1第一个得分是55而list2是51,我想将它们合并到一个列表中等于106,然后添加一些可以除以每个时间的东西,因为每个列表中有7个不同的数字。 / p>
hashes = [{ Date.new(2012,3,1)=>1 }, { Date.new(2012,4,20)=>2 },
{ Date.new(2012,6,10)=>3 }, { Date.new(2012,6,11)=>4 }]
#=> [{#<Date: 2012-03-01 ((2455988j,0s,0n),+0s,2299161j)>=>1},
# {#<Date: 2012-04-20 ((2456038j,0s,0n),+0s,2299161j)>=>2},
# {#<Date: 2012-06-10 ((2456089j,0s,0n),+0s,2299161j)>=>3},
# {#<Date: 2012-06-11 ((2456090j,0s,0n),+0s,2299161j)>=>4}]
r = Date.new(2012,3,3)..Date.new(2012,6,10)
hashes.select{|h| r.cover? h.first.first }
#=> {#<Date: 2012-04-20 ((2456038j,0s,0n),+0s,2299161j)>=>2,
# #<Date: 2012-06-10 ((2456089j,0s,0n),+0s,2299161j)>=>3}
输出
import csv
list1 = []
list2 = []
with open("scores.csv") as f:
reader = csv.reader(f)
for row in reader:
list1.append(row[1])
list2.append(row[2])
print (list1)
print (list2)
预期输出(通缉输出)
['55', '25', '40', '21', '52', '42', '19']
['51', '36', '50', '39', '53', '33', '40']
然后每个需要除以120和* 100。
答案 0 :(得分:0)
查看zip。
for a, b in zip(list1, list2):
# .... do stuff
所以对你来说:
output = [((int(a)+int(b))/120)*100 for a, b in zip(list1, list2)]
答案 1 :(得分:0)
制作一个新列表,将您想要的计算考虑在内。
>>> list1 = ['55', '25', '40', '21', '52', '42', '19']
>>> list2 = ['51', '36', '50', '39', '53', '33', '40']
>>> result = [(int(x)+int(y))/1.2 for x,y in zip(list1, list2)]
>>> result
[88.33333333333334, 50.833333333333336, 75.0, 50.0, 87.5, 62.5, 49.16666666666667]