1

我正在考虑为我的 Python 应用程序使用用户可读的文件格式。现在我用pickle二进制存储我的数据。我不确定 XML 或 JSON 是否可行,但基本上我的文件包含如下所示的列表列表:

[1, 'the name of the set', [[1, 'data1', 'data2'],[2,'data3','data4']]

包含包含字符串的其他列表的列表可以有多个项目(甚至数百个)。基本上,我想要一些具有简单接口的东西来将其转换为/从 python 列表中转换,我需要这些整数来保持整数。

4

2 回答 2

2

我会在这里特别使用 YAML PyYAML;IHMO 更适合人类阅读!

示例:(手工

foo:
    - 1
    - 2
    - 3

嵌套从上面的例子中排除

使用:yaml.dump()和朋友。

演示:

>>> import yaml
>>> data = {"foo": [[1, 2, 3], [4, 5, 6]]}
>>> print yaml.dump(data)
foo:
- [1, 2, 3]
- [4, 5, 6]

注意:由于JSONYAML的一个子集,它们都不会保留复杂类型;仅支持基本类型;int, float,和. list_dictstr

于 2015-05-12T01:46:32.527 回答
2

那已经是字面的 JSON。JSON 可能是目前最流行的格式,而且很难与它的易读性争论。

In [105]: my_list = [1, 'the name of the set', [[1, 'data1', 'data2'],[2,'data3','data4']]]
In [106]: my_list == json.loads(json.dumps(my_list))
Out[106]: True
于 2015-05-12T01:51:26.393 回答