Gravando arquivo CSV com trema causando "UnicodeEncodeError: o codec 'ascii' não pode codificar caracteres"

Estou tentando escrever caracteres com pontos duplos (trema), como ä, ö e Ö. Sou capaz de escrevê-lo no arquivo comdata.encode("utf-8") mas o resultadob'\xc3\xa4\xc3\xa4\xc3\x96' não é legal (UTF-8 como caracteres literais). Eu quero pegar"ääÖ" como gravado armazenado em um arquivo.

Como gravar dados com caracteres de trema em um arquivo CSV no Python 3?

import csv
data="ääÖ"
with open("test.csv", "w") as fp:
    a = csv.writer(fp, delimiter=";")
    data=resultFile
    a.writerows(data)

Traceback:

File "<ipython-input-280-73b1f615929e>", line 5, in <module>
  a.writerows(data)
UnicodeEncodeError: 'ascii' codec can't encode character '\xe4' in position 15: ordinal not in range(128)

questionAnswers(2)

yourAnswerToTheQuestion