如果其他模块使用其名称,如何使用内置函数?

Dzh*_*ang 2 python built-in python-2.7

例如,anyPython中有一个内置函数.问题是,numpy导入模块时,any会更改函数的定义.

如何any__builtin__模块中使用原始功能?

例如:

from numpy import *
any(i % 3 for i in [3, 3, 4, 4, 3])
Run Code Online (Sandbox Code Playgroud)

并且代码不起作用!对不起,我是Python的新手.

Mar*_*ers 9

您仍然可以访问__builtin__模块上的对象:

import __builtin__
__builtin__.any(i % 3 for i in [3, 3, 4, 4, 3])
Run Code Online (Sandbox Code Playgroud)

(该模块builtins在Python 3中被重命名;下划线被删除,复数形式).

导入所有内容之前,您可以any使用其他名称:numpy

bltin_any = any
from numpy import *

bltin_any(i % 3 for i in [3, 3, 4, 4, 3])
Run Code Online (Sandbox Code Playgroud)

或者不要使用import *.import numpy as np也许使用,并使用np.any()这种方式使用NumPy版本.

  • @jonrsharpe:我认为帖子很短; 有时您需要以这种方式访问​​内置插件,这仍然是问题的核心. (2认同)