Tag: 真实性

空集的真值

我感兴趣的是Python集合的真值,比如{'a', 'b'}或者空set set() (它与空字典{}不一样)。 特别是,我想知道当bool(my_set)是否为False当且仅当set my_set为空时。 忽略原始(如数字)以及用户定义的types, https : //docs.python.org/3/library/stdtypes.html#truth说: 以下值被认为是错误的: […] 任何空序列,例如'' , () , [] 。 任何空的映射,例如{} 。 […] 所有其他值都被认为是正确的 根据https://docs.python.org/3/library/stdtypes.html#sequence-types-list-tuple-range ,一个集合不是一个序列(它是无序的,它的元素没有索引等等。 ): 有三种基本的序列types:列表,元组和范围对象。 而且,根据https://docs.python.org/3/library/stdtypes.html#mapping-types-dict , 目前只有一种标准的映射types,即字典 。 所以,就我所知,集合types不是一个可能是False的types。 但是,当我尝试, bool(set())评估为False 。 问题: 这是一个文档问题,还是我得到错误? 空集是唯一的真值是False集合吗?