用python表示此数据结构的最佳方法是什么?
x
它不是json,是别的东西,对不起我,我正在搜索各种python教程,但无法弄清楚它是不是可以像numpy.load或json.loads这样容易加载的结构,因为当我尝试将结构验证为JSON,它表示无效的json ...
答案 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}]