Python3.x移除了callable内建函数

最近学习Python的时候,在Python3下跑《Dive Into Python》一个例子,发现在调用callable()函数时报了错误:

NameError: name 'callable' is not defined

上网一查发现Python3已经将此内置函数移除了。查阅Python v3.0 documentation发现可以使用

hasattr(object, name)内置函数来完成callable的功能,方式如下:

3.0之前:callable(func)

3.0之后:hasattr(func, '__call__')

这两者结果是相同的。

原文地址:https://www.cnblogs.com/elvisxu/p/1861958.html