Python中文
首页
教程
问答
标签
搜索
登录
注册
Python中简单布尔逻辑的动态求值
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我有一些动态生成的布尔逻辑表达式,比如:</p> <ul> <li>(A或B)和(C或D)</li> <li>A或(A和B)</li> <li>一个</li> <li><em>空-计算结果为True</em></li> </ul> <p>占位符将替换为布尔值。如果我</p> <ol> <li>把这些信息转换成一个Python表达式,比如<code>True or (True or False)</code>和<code>eval</code>?</li> <li>创建一个二叉树,其中一个节点是<code>bool</code>或<code>Conjunction</code>/<code>Disjunction</code>对象并递归地计算它?</li> <li>将其转换为嵌套的S表达式并使用Lisp解析器?</li> <li>还有别的吗?</li> </ol> <p>欢迎提出建议。</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>编写一个能够处理这个问题的求值器并不难,例如使用<a href="https://github.com/pyparsing/pyparsing" rel="nofollow noreferrer">pyparsing</a>。您只需要处理几个操作(和、或和分组?),所以您应该能够自己分析和评估它。</p> <p>不需要显式地形成二叉树来计算表达式。</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
如何提高Djang的410误差
4 回答
如何提高doc2vec模型中两个文档(句子)的余弦相似度?
1 回答
如何提高Docker的日志限制?|[输出已剪裁,达到日志限制100KiB/s]
8 回答
如何提高DQN的性能?
3 回答
如何提高EasyOCR的准确性/预测?
7 回答
如何提高Euler#39项目解决方案的效率?
3 回答
如何提高F1成绩进行分类
5 回答
如何提高FaceNet的准确性
6 回答
如何提高fft处理的精度?
9 回答
如何提高Fibonacci实现对大n的精度?
5 回答
如何提高Flask与psycopg2的连接时间
3 回答
如何提高FosterCauer变换的scipy.signal.invres()的数值稳定性?
8 回答
如何提高gae查询的性能?
4 回答
如何提高GANs用于时间序列预测/异常检测的结果
5 回答
如何提高gevent和tornado组合的性能?
6 回答
如何提高googleappengin请求日志的吞吐量
5 回答
如何提高googlevision文本识别的准确性
3 回答
如何提高groupby/apply效率
9 回答
如何提高Gunicorn中的请求率
6 回答
如何提高G中的文件编码转换
2 回答