[英]Python analog to MatLab data structure
我最近跳出了矩阵实验室窗口,我正在尝试让Python / Numpy / Scipy做我以前在MatLab中做的事情。 到目前为止它似乎真的很好,但我正在努力的一件事就是在MatLab中找到类似于数据结构的东西。
我想编写一个通用代码来读取.xml文件,并根据变量是字符串,标量还是矩阵将变量自动分配到数据结构中。 典型的xml文件将像这样拆分:
<material>
<id>
1
<\id>
<E>
17e4
<\E>
<var 2>
'C:\data file path'
<\var 2>
<var 3>
[1 2;3 4]
<\var 3>
<\material>
<material>
<id>
2
<\id>
<var 1>
17e4
<\var 1>
<var 2>
'C:\data file path'
<\var 2>
<var 3>
[1 2;3 4]
<\var 3>
<\material>
...
etc
在Matlab中我会创建一个这样的数据结构:
Materials.1.E=17e4
Materials.1.var2='C:\data file path'
Materials.1.var3=[1 2;3 4]
Materials.2.E=17e4
Materials.2.var2='C:\data file path'
Materials.2.var3=[1 2;3 4]
如果python中的列表可以是2D(因此我可以将每种材料的所有变量都排成一行),或者字典可以具有多个层或可以包含列表,那么它们会是完美的,但是我找不到我想要的东西想要此刻!
任何帮助都感激不尽!
正如Shai所建议的那样,您可以使用词典列表。 对于您的示例,这将看起来像这样:
Materials = []
Materials.append({'E': 17e4, 'var2': 'C:\\data file path', 'var3': [1, 2, 3, 4]})
Materials.append({'E': 17e4, 'var2': 'C:\data file path', 'var3':[1, 2,3, 4]})
print Materials[0]['var2']
打印:
C:\data file path
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.