Python - test whether object is a builtin function

后端 未结 5 911
面向向阳花
面向向阳花 2020-12-19 06:16

Is there a nice way to check whether object o is a builtin Python function?

I know I can use, for example

type(o) == type(pow)

beca

5条回答
  •  星月不相逢
    2020-12-19 07:02

    you can also do

    import __builtin__
    o in __builtin__.__dict__.values()
    

    or, in CPython:

    o in __builtins__.__dict__.values()
    

    but note that you rely on an implementation detail here.


    >>> pow in __builtins__.__dict__.values()
    True
    >>> def a():
    ...   pass
    ...
    >>> a in __builtins__.__dict__.values()
    False
    >>>
    

提交回复
热议问题