📜  TypeError: 'frozenset' 对象不可调用 - Python (1)

📅  最后修改于: 2023-12-03 15:35:23.671000             🧑  作者: Mango

TypeError: 'frozenset'对象不可调用

当你尝试调用一个frozenset对象(不可变的集合)时,该错误就会被抛出。

例如,以下代码会导致TypeError:

f_set = frozenset([1, 2, 3])
f_set(2)

输出:

TypeError: 'frozenset' object is not callable

这是因为f_set是一个集合对象,而不是可调用函数。

如果你想检查f_set中是否存在某个元素,可以使用in关键字:

f_set = frozenset([1, 2, 3])
2 in f_set  # True

或者,你可以通过将f_set转换为可调用函数来实现。例如,将f_set转换为lambda表达式:

f_set = frozenset([1, 2, 3])
f_set_lambda = lambda x: x in f_set
f_set_lambda(2)  # True

但是,这个方法不如使用in关键字简洁和易读。

请注意,类似setdict的可变集合和映射对象没有这个问题,因为它们是可调用函数。如果你需要一个可变的集合,可以使用set类。