Python で複素数のリストをインポートおよびエクスポートするコードを作成しようとしています。これまでのところ、csv モジュールを使用してこれを試みています。次を使用してデータをファイルにエクスポートしました。
spamWriter = csv.writer(open('data.csv', 'wb')
spamWriter.writerow(complex_data)
ここで、complex データは、complex(re,im) 関数によって生成されたリスト番号です。元:
print complex_data
[(37470-880j),(35093-791j),(33920-981j),(28579-789j),(48002-574j),(46607-2317j),(42353-1557j),(45166-2520j),(45594-232j),(41149+561j)]
これを後でインポートするには、次のことを試します。
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)']]
(これはリストのリストであることに注意してください。この例ではたまたま 1 行しか使用していませんでした。)
これを文字列ではなく複素数に変換する必要があります。この質問のようにマッピングでこれを行う方法があるはずだと思いますが、それを機能させる方法がわかりませんでした。どんな助けでも大歓迎です!
または、私が知らない複雑な値のデータをインポート/エクスポートする簡単な方法があれば、まったく別の方法を試してみたいと思います。