python - 将字符串转换为python列表

时间:2013-12-20 10:51:20

标签: list python-2.7

我有一个字符串,其中包含我的数据:

result = "[
           {'service': {'option1': 'abc', 'others': 'blah blah'}},
           {'service': {'option2': 'None', 'others': 'None'}}
          ]\n
          [
           {'rules': {'permissions': 'allow', 'opp': 'evening', 'order': '10', 'self': 'me'}},
            {'rules': {'permissions': 'not allowed', 'opp': 'None\\n', 'order': 'None', 'self': 'None'}}
          ]"

我想将其转换为适当的列表,如:

result = [[
          {'service': {'option1': 'abc', 'others': 'blah blah'}},
          {'service': {'option2': 'None', 'others': 'None'}}
         ],
         [
          {'rules': {'permissions': 'allow', 'opp': 'evening', 'order': '10', 'self': 'me'}},
          {'rules': {'permissions': 'not allowed', 'opp': 'None\\n', 'order': 'None', 'self': 'None'}}
         ]]

请帮助我! 我尝试了.split().join(),但无法获得上述格式。

1 个答案:

答案 0 :(得分:4)

您可以使用ast,(Abstract Syntax Trees)对字符串进行微小修改,

import ast
ast.literal_eval( '[{}]'.format( result.replace( ']\n', '],' ) ) )