Jak zamienić listę ciągów znaków w liczby złożone w pythonie?

Próbuję napisać kod, który importuje i eksportuje listy liczb zespolonych w Pythonie. Do tej pory próbuję tego za pomocą modułu csv. Wyeksportowałem dane do pliku, używając:

spamWriter = csv.writer(open('data.csv', 'wb')
spamWriter.writerow(complex_data)

Gdzie złożone dane to numery list generowane przez funkcję złożoną (re, im). Dawny:

print complex_data
[(37470-880j),(35093-791j),(33920-981j),(28579-789j),(48002-574j),(46607-2317j),(42353-1557j),(45166-2520j),(45594-232j),(41149+561j)]

Aby później zaimportować to w późniejszym czasie, spróbuję wykonać następujące czynności:

mycsv = csv.reader(open('data.csv', 'rb'))
out = list(mycsv)
print out
[['(37470-880j)','(35093-791j)','(33920-981j)','(28579-789j)','(48002-574j)','(46607-2317j)','(42353-1557j)','(45166-2520j)','(45594-232j)','(41149+561j)']]

(Zauważ, że jest to lista list, akurat użyłem tylko jednego wiersza dla przykładu.)

Teraz muszę zmienić to na liczby złożone, a nie na łańcuchy. Myślę, że powinien istnieć sposób na zrobienie tego z mapowaniem jak wto pytanie, ale nie mogłem zrozumieć, jak to działa. Każda pomoc byłaby mile widziana!

Alternatywnie, jeśli istnieje łatwiejszy sposób importowania / eksportowania danych o wartościach złożonych, o których nie wiem, z przyjemnością spróbuję czegoś zupełnie innego.

questionAnswers(5)

yourAnswerToTheQuestion