2024-04-20 01:05:46 发布
网友
我有一个Python中的布尔列表
mylist = [True , True, False,...]
我想把它改成逻辑相反的[False, False, True , ...] 在Python中有没有一种内置的方法来实现这一点(类似于调用not(mylist)),而不需要手动编写循环来反转元素?
[False, False, True , ...]
not(mylist)
>>> import operator >>> mylist = [True , True, False] >>> map(operator.not_, mylist) [False, False, True]
对于numpy.ndarray,一元颚化符(~)将执行此操作。所以:
>>> import numpy >>> mylist = [True, True, False] >>> ~numpy.array(mylist) array([False, False, True], dtype=bool) >>> list(~numpy.array(mylist)) [False, False, True]
请注意,翻转列表的元素类型为numpy.bool,而不是bool。
清单理解很简单:
mylist = [True , True, False] [not i for i in mylist]
收益率
[False, False, True]
对于numpy.ndarray,一元颚化符(~)将执行此操作。所以:
请注意,翻转列表的元素类型为numpy.bool,而不是bool。
清单理解很简单:
收益率
相关问题 更多 >
编程相关推荐