什么是简单的效用函数,以旧式的和新的风格的蟒蛇类或对象区分?什么是一个简单的工具功能的老式和新式的Python类进行区分或对象
有以下几种正确/完整:
isNewStyle1 = lambda o: isinstance(hasattr(o, '__class__') and o.__class__ or o, type)
isNewStyle2 = lambda o: hasattr(o, '__class__') and type(o) == o.__class__ or False
如果没有,那么你能提供一个解决方案。如果是这样,是否有更好的方法来做这个检查?
使用上面,我已经没有任何问题,但我没有100%的信心,这将对于作为参数提供的所有对象。
'isNewStyle =拉姆达X:hasattr(X, “__weakref __”)'只需选择一个功能,新式类都有,但老样式类没有。 –