用python解析一个类似字符串的元组

时间:2019-03-07 11:59:08

标签: python regex

我有一个像字符串这样的元组:

("a",10,4,"abc")

我想解析它以包含字符串列表中的每个项目:

ans = [a, 10, 4, abc]

在该示例中,我很容易实现用逗号分割字符串行。

但是,字符串行中的字符串项目可能带有逗号和双引号,例如

("abc",10,-4,"abc"","d,ef")

我想获取字符串列表。

ans = [abc, 10, -4, abc", d,ef]

有没有人有一个很好的想法用Python实现它?

1 个答案:

答案 0 :(得分:1)

如果字符串用双qoutes封装,并且您在其中使用"。因此需要使用转义字符\来表示它是一个字符。

尝试此代码!

import ast

print(list(ast.literal_eval('("abc",10,-4,"abc\\"","d,ef")')))

输出:

['abc', 10, -4, 'abc"', 'd,ef']