你的做法是正确的,只是下标越界了
你的B只有3个元素,所以for j in range(0,2000000)这个循环到第四次,j=3的时候B[j][0]就下标越界了。
这里有个类似的问题,可以参考看看:http://zhidao.baidu.com/question/542640502?&oldq=1
python不建议在循环中修改列表中的值。会造成索引错乱。
把列表中的哪些元素当做key,哪些元素当做value?
tracB={}
for item in B:
traceB{item[0]:item[1]}