Python 3.x 在Python中将嵌套IF条件转换为嵌套列表

Python 3.x 在Python中将嵌套IF条件转换为嵌套列表,python-3.x,Python 3.x,谁能帮我把下面的条件转换成一个列表。每个IF条件都有一个IF块、一个“then”(用逗号分隔)块和一个“else”块。到目前为止,还没有什么真正奏效的 单个IF条件如下所示: IF(IN(COL1, 'val'), COL2, COL3) 实时场景具有如下嵌套条件 IF(IN(COL1, 'val1'), 'A', IF(COL2 = 'val2', IF(COL3 = 'val3', 'B', 'C'), 'D') 查找每个IF条件的嵌套列表,其中“then”和“else”作为单独的项,如

谁能帮我把下面的条件转换成一个列表。每个IF条件都有一个IF块、一个“then”(用逗号分隔)块和一个“else”块。到目前为止,还没有什么真正奏效的

单个IF条件如下所示:

IF(IN(COL1, 'val'), COL2, COL3)
实时场景具有如下嵌套条件

IF(IN(COL1, 'val1'), 'A', IF(COL2 = 'val2', IF(COL3 = 'val3', 'B', 'C'), 'D')
查找每个IF条件的嵌套列表,其中“then”和“else”作为单独的项,如:(“then”和“else”可以是另一个IF语句,应该遵循相同的列表过程)


你能展示一下自己在解决这个问题上的努力吗?我建议你去看看图书馆。。。不要重新发明轮子(没有很好的理由),我可以通过更换牙套来做到这一点,先把牙套卷起来。然后我使用它作为参考,将所有IF语句更改为相应的列表。在代码-def parse_嵌套(text,left=r'IF[(]',right=r'[)]',sep=r',(?![^{]*[}])中有一个更改:
["IF(IN(COL1, 'val1')", 'A', ["IF(COL2 = 'val2'", ["IF(COL3 = 'val3'", 'B', 'C'], 'D']]
["IN(COL1 = 'val1'", 'A', ["COL2 = 'val2'", ["COL3 = 'val3'", 'B', 'C'], 'D']]