在Python中解析PHP数组

3

我将从网页中获取一个 PHP 数组(作为字符串)。

它看起来像这样:

Array
(
[k1] => Array
    (
        [a] => Array
            (
                [id] => 1
                [age] => 60
            )

        [b] => Array
            (
                [id] => 2
                [age] => 30
            )

    )

[k2] => v2
)

我想在Python中解析它。 有人知道如何做吗?

谢谢, Rivka

编辑: 这真的不是JSON,就像一些人评论的那样。 感谢您的评论,我已经更新了问题。


你说的“parsing it”是什么意思? - Ibu
1
可能是Getting started with json的重复问题。 - Pekka
2
那不是JSON - 那是PHP。 - troelskn
1
这不是 JSON ……如果它是的话,不管它来自哪里都无关紧要。JSON 就是 JSON ,没有什么区别。 - deceze
JSON = JavaScript 对象表示法 - salmatron
显示剩余2条评论
2个回答

10
那不是JSON,那只是PHP打印数组的方式。如果你想要创建该数组的JSON格式,请查看PHP的json_encode函数。然后使用Python的JSON库(或者py3这里)来读取它。

4

如果我理解正确,您正在使用print_r在数组上获取输出。这只是数组的可视化表示,您无法真正解析它。例如:

array('Array'.PHP_EOL."\t(".PHP_EOL."            [0] => test".PHP_EOL."\t)")

将完全看起来像。
array(array('test'));

您需要使用一些真正的序列化函数来实现您想要的功能(例如json、serialize等);


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接