【发布时间】:2013-02-11 14:33:41
【问题描述】:
我有以下
str = '[5.955894, 45.817792], [10.49238, 45.817792], [10.49238, 47.808381], [5.955894, 47.808381]'
我想拆分它,以便我有一个字符串数组,如
['[5.955894, 45.817792]', '[10.49238, 45.817792]', ...]
因此 [...] 对象是数组的元素。包含封闭的 [ 和 ] 很重要。我已经来了这么远:
re.split('\D,\s\D', str)
但这给了我:
['[5.955894, 45.817792', '10.49238, 45.817792', '10.49238, 47.808381', '5.955894, 47.808381]']
不是我想要的。
【问题讨论】:
-
eval('[' + str + ']')如果它来自受信任的来源。 -
你最终想达到什么目标?
-
我的问题中的第二行代码。这就是我想要的。
-
@nhahtdh --
eval不会提供 OP 想要的东西,但作为旁注,有ast.literal_eval可以做与eval相同的事情,而没有安全隐患。