解释要执行的字符串和/或数据帧掩码的组合

2024-04-26 12:36:24 发布

您现在位置:Python中文网/ 问答频道 /正文

我不知道从哪里开始。我知道我可以对掩码进行位逻辑组合,比如:(mask1 & mask2) | mask3 | (mask4 & (mask5 | mask6))

现在,如果有一个用户输入一个字符串,比如:'(criteria1 & criteria2) | criteria3 | (criteria4 & (criteria5 | criteria6))',但是需要通过一个函数来解释每个条件以确定并返回一个掩码,那么我如何保留括号和逻辑,然后组合掩码呢


Tags: 字符串用户逻辑掩码mask2mask3mask1criteria2
1条回答
网友
1楼 · 发布于 2024-04-26 12:36:24

经过一些工作之后,我能够用正则表达式和eval()实现这一点

使用regex,我提取了“模板”和“标准”。“模板”看起来像1 & 2 | (3 & 4 & (5 or 6)),关联的“条件”看起来像['criteria1', 'criteria2', ..., 'criteria6']。然后,我可以按照自己的意愿操纵条件,然后将操纵的值替换回模板字符串中。最后,我可以运行eval(template)或任何要执行的最终字符串的名称

相关问题 更多 >