【发布时间】:2014-09-10 20:06:00
【问题描述】:
是否有可能以某种方式将 or 或 and 的字符串转换为可识别为逻辑运算符的形式?
例如,是否可以这样做:
l = [1, 2, 3, 4, 5]
o = {item1:'or'}
for i in l:
if i > 4 o[item1] i < 0:
print i
o[item1] 在哪里被识别为有效的or 逻辑运算符?
【问题讨论】:
-
可以创建等效的等效 (fsvo) 表达式,但不能像那样使用它 - 这只是无效的语法 - 并且表达式本身需要更改。
-
XY 问题:你认为你为什么需要这个?
-
通过一些技巧,您可以获得
(i > 4) |o[item1]| (i < 0)语法(没有短路),但您永远不会在任何实际代码中使用它,所以它只不过是一个客厅技巧。您认为这有什么特别的问题吗?也许有更好的方法来解决它。 -
我正在尝试解决我在这里发布的问题:stackoverflow.com/questions/25691990/…
-
@DSM:实际上您可以使用许多不同的分隔符,例如
a <o[x]> b或a **o[x]** b甚至a %o[x]% b...可能性无穷无尽! :P
标签: python operators expression