Skip to main content
 首页 » 编程设计

Python 类有方法 "set",如何引用内置集合类型

2025年05月04日20sxdcgaq8080

如果您在类中有一个名为“set”的方法,并且想在类中的其他地方创建一个标准的内置“set”对象,那么当我这样做时,Python 似乎会引用该方法。您如何更具体地让 Python 知道您指的是内置“set”,而不是方法“set”?更具体地说,set() 是在 ____exit_____ 函数中创建的。

请您参考如下方法:

我想我知道这里发生了什么。你在做这样的事情吗?

>>> class A(object): 
...     def set(self): 
...             pass 
...     def test(self, x=set): 
...             return x 
...  
>>> set 
<type 'set'> 
>>> A().test() 
<function set at 0x64270> 

由于在类中定义方法的方式,这是一个微妙的问题。它允许您如此轻松地创建方法别名,例如,

class A(object): 
    def some_method(self): 
        pass 
    some_other_method = some_method 

您可以将 set 放在类定义的底部,也可以使用 __builtins__.set 引用内置集。