在 Python 中获取 Set 的长度

在 Python 中获取集合的长度

Get the length of a Set in Python

使用该len()函数获取集合的长度,例如
result = len(my_set)len()函数返回一个对象的长度(元素的数量),并且可以传递一个序列(列表、字符串、元组、范围或字节)或集合(字典、集合或冻结集合)。

主程序
my_set = {'a', 'b', 'c'} print(len(my_set)) # 👉️ 3

len()函数返回对象的长度(项目数)。

Set 对象是唯一元素的无序集合,因此它们不支持索引和切片。如果您需要支持索引和切片,请改用方括号来创建列表。

如果您需要对 aset中满足条件的元素进行计数,请使用列表理解来获取与条件匹配的元素子集并将结果传递给len()函数。

主程序
my_set = {1, 2, 3, 4, 5} result = len([x for x in my_set if x > 3]) print(result) # 👉️ 2

该示例获取set大于 的元素数3

列表推导用于对每个元素执行一些操作,或者选择满足条件的元素子集。

无论您添加还是删除元素,len()函数始终保证返回正确的长度
set

主程序
my_set = {'a', 'b', 'c'} my_set.add('d') print(my_set) # 👉️ {'d', 'a', 'b', 'c'} print(len(my_set)) # 👉️ 4 my_set.remove('d') print(my_set) # 👉️ {'a', 'b', 'c'} print(len(my_set)) # 3

您还可以使用该len()函数来检查 aset是否为空。

主程序
my_set = set() if len(my_set) == 0: # 👇️ this runs print('set is empty') else: print('set is NOT empty')

如果 aset的长度为0,则它为空。

您可能还会在网上看到检查 是否set为真(检查它是否至少包含 1 项)的示例,这更加隐含。

主程序
my_set = set() if my_set: print('set is NOT empty') else: # 👇️ this runs print('set is empty')

所有不真实的值都被认为是虚假的。Python 中的虚假值是:

  • 定义为 falsy 的常量:NoneFalse.
  • 0任何数字类型的(零)
  • 空序列和集合:(""空字符串),()(空元组),[]
    (空列表),
    {}(空字典),set()(空集),range(0)(空范围)。

请注意,空set值是一个假值,因此如果set为空,
else则运行该块。

如果您需要set使用这种方法检查 是否为空,您可以使用 否定条件not

主程序
my_set = set() if not my_set: # 👇️ this runs print('set is empty') else: print('set is NOT empty')

发表评论