从列表中删除布尔值[重复]
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从列表中删除布尔值[重复]相关的知识,希望对你有一定的参考价值。
将布尔值传递给列表的remove方法时,将删除第一个元素而不是布尔值。但是当再次执行时,它做对了。为什么会发生这种情况?
lst = [1, 2, True]
lst.remove(True)
print(lst)
#Output: [2, True]
lst.remove(True)
print(lst)
#Output: [2]
答案
这是因为1也是bool
。在python中,1是True
,0是False
。
另一答案
Python认为1和True相等。使用0和False会发现类似的情况。
。remove()方法删除列表中第一次出现的对象。您的情况是要删除True,并且由于“ 1”为True,因此从列表中删除“ 1”,然后是True。
您可以通过执行此操作来测试
bool(1)
哪个打印:True
以上是关于从列表中删除布尔值[重复]的主要内容,如果未能解决你的问题,请参考以下文章
python - 用两个不同列表中的值替换列表的布尔值[重复]