python中怎么对一组逻辑变量求“或”?

  算法/数据结构/数据库 Python    浏览次数:396        分享
0

python中怎么对一组逻辑变量求“或”?

比如一个列表x,里面有10个元素,x=[x1, x2, ...],如果要对所有的元素求或运算,就需要写很长的式子

x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | x10

有什么简便的方法吗?

 

robin_he   2019-11-03 12:48



   2个回答 
3

对于或运算,只要有一个是True,整个就是True了

>>> x = [True, False, True, False, False]
>>> True in x
True

也可以看整个list中的最大值

>>> x = [True, False, True, False, False, False, False]
>>> max(x)
True
SofaSofa数据科学社区DS面试题库 DS面经

sasa   2019-11-03 15:40

2

也可以用numpy的any函数


Examples
--------
>>> np.any([[True, False], [True, True]])
True

>>> np.any([[True, False], [False, False]], axis=0)
array([ True, False])

>>> np.any([-1, 0, 5])
True

>>> np.any(np.nan)
True

>>> o=np.array([False])
>>> z=np.any([-1, 4, 5], out=o)
>>> z, o
(array([ True]), array([ True]))
>>> # Check now that z is a reference to o
>>> z is o
True
>>> id(z), id(o) # identity of z and o              # doctest: +SKIP
(191614240, 191614240)


SofaSofa数据科学社区DS面试题库 DS面经

jackey_chen8   2020-03-21 09:22



  相关主题

python中defaultdict的用法   2回答

python的set进行append操作?   2回答

怎么在python中复制指定路径下的文件?   1回答

python中怎么获取cpu的个数?   1回答

python中如何合并两个dict   2回答

mysql怎么对每个group只选2行?   1回答

mysql里ORDER BY的默认排序是什么?   2回答

NoSql数据库是什么样的?   1回答

mysql里获取中位数和四分位数的函数是什么?   2回答

mysql数据库中怎么从一个表里随机抽取k行?   2回答

hive里的LEFT SEMI JOIN是什么JOIN?   1回答

sql怎么对数据表里的一列中文字符串按照首音字母顺序排序?   1回答



回答问题时需要注意什么?

我们谢绝在回答前讲“生动”的故事。

我们谢绝“这么简单,你自己想”、“书上有的,你认真看”这类的回答;如果你认为对方的提问方式或者内容不妥,你可以直接忽略该问题,不用进行任何作答,甚至可以对该问题投反对票。

我们谢绝答非所问。

我们谢绝自己不会、硬要回答。

我们感激每一个用户在编写答案时的努力与付出!