表示python中的数据结构

时间:2018-12-07 18:33:04

标签: python arrays json numpy data-structures

用python表示此数据结构的最佳方法是什么?

x

它不是json,是别的东西,对不起我,我正在搜索各种python教程,但无法弄清楚它是不是可以像numpy.load或json.loads这样容易加载的结构,因为当我尝试将结构验证为JSON,它表示无效的json ...

2 个答案:

答案 0 :(得分:1)

您拥有的是字典列表。

myList = []

dict1 = {'x': 230, 'y': 50}
dict2 = {'x': 350, 'y': 50}
dict3 = {'x': 410, 'y': 50}

myList.append(dict1)
myList.append(dict2)
myList.append(dict3)

答案 1 :(得分:1)

您有三个字典的列表(值的键映射),其工作方式如下:

>>> dicts = [{'x': 230, 'y': 50}, {'x': 350, 'y': 50}, {'x': 410, 'y': 50}]
>>> dicts[0]
{'x': 230, 'y': 50}
>>> dicts[0]['x']
230
>>> dicts[2]['y']
50

由于示例中所有词典共享相同的键('x''y'),因此您可以将它们解释为记录

表示这些记录的一种好方法是使用pandas.DataFrame,它具有类似表格的打印输出。

>>> import pandas as pd
>>> pd.DataFrame(dicts)
     x   y
0  230  50
1  350  50
2  410  50

如果您有 string

>>> s = "[{'x': 230, 'y': 50}, {'x': 350, 'y': 50}, {'x': 410, 'y': 50}]"

您可以使用ast.literal_eval安全地对其进行评估。

>>> from ast import literal_eval
>>> literal_eval(s)
[{'x': 230, 'y': 50}, {'x': 350, 'y': 50}, {'x': 410, 'y': 50}]