我正在尝试编写在Python中导入和导出复数列表的代码。到目前为止,我正在尝试使用csv模块。我已经使用以下数据导出数据到文件:如何在python中将字符串列表转换为复数?
spamWriter = csv.writer(open('data.csv', 'wb')
spamWriter.writerow(complex_data)
其中复杂数据是由复合(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)']]
(注意,这是一个列表的列表,我刚好要使用的只有一行例如。)
我现在需要把它变成复数而不是字符串。我认为应该有一种方法可以像this question那样进行映射,但我无法弄清楚如何使其工作。任何帮助,将不胜感激!另外,如果有更简单的方法导入/导出我不知道的复数值数据,我很乐意完全尝试其他方法。
@Martijn彼得斯3分钟击败你,但+1仍然 – inspectorG4dget 2012-07-25 22:06:43
非常好,谢谢! – 2012-07-25 22:09:54