我想要一个 Python 函数,它接收一个字符串,并返回一个数组,其中数组中的每一项要么是一个字符,要么是另一个类似的数组。嵌套数组在输入字符串中以'('开始,以')结束。
因此,该函数将像这样行事。
1) foo("abc") == ["a", "b", "c"]
2) foo("a(b)c") == ["a", ["b"], "c"]
3) foo("a(b(c))") == ["a", ["b", ["c"]]]
4) foo("a(b(c)") == error: closing bracket is missing
5) foo("a(b))c") == error: opening bracket is missing
6) foo("a)b(c") == error: opening bracket is missing
注:我更希望有一个纯粹的功能性的解决方案。