Python leia csv - BOM incorporada na primeira chave

Estou usando o Python 2.7.12. Com esse trecho de código, estou salvando um arquivo utf-8 csv. Eu escrevi a lista técnica no início do arquivo.

import codecs
import csv

outputFile = open("test.csv", "wb")
outputFile.write(codecs.BOM_UTF8)
fieldnames = ["a", "b"]
writer = csv.DictWriter(outputFile, fieldnames, delimiter=";")
writer.writeheader()
row = dict([])
for i in range(10):
    row["a"] = str(i).encode("utf-8")
    row["b"] = str(i*2).encode("utf-8")
    writer.writerow(row)
outputFile.close()

Eu quero carregar esse arquivo csv:

import codecs
import csv
inputFile = open("test.csv", "rb")
reader = csv.DictReader(inputFile, delimiter=";")
for row in reader:
    print row["a"]
inputFile.close()

O código acima falhará:KeyError: 'a' Se eu imprimir as teclas de linha, é assim que elas ficam:[u'\ufeffa', u'b']. A lista técnica foi incorporada na chavea. O que estou fazendo errado?

questionAnswers(1)

yourAnswerToTheQuestion