在 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 的常量:
None
和False
. 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')