2024-05-15 11:38:44 发布
网友
我在用Jupyter笔记本。我想知道是否有一种方法可以在不调用模块的情况下使用模块中的函数。例如,如果我有
import numpy as np print np.sin(2)
我只想打字
首先想到的是将numpy函数添加到Python正在使用的函数库中。但我想知道这是否可行,如果可行,我该怎么做。请注意,我希望导入所有函数,而不仅仅是少数几个函数。在
from numpy import sin print sin(2)
https://docs.python.org/2/tutorial/modules.html详细阅读
您可以从模块导入特定对象。尝试:
要将所有对象从模块导入到全局命名空间,可以使用import *。在
import *
但这是不建议使用的,因为很容易导致名称冲突,例如,如果两个模块定义了一个名为sin的函数,应该调用sin的哪个版本?在
sin
>>> import math >>> import numpy >>> math.sin <built-in function sin> >>> numpy.sin <ufunc 'sin'> >>> from math import * >>> sin <built-in function sin> >>> from numpy import * >>> sin <ufunc 'sin'>
您可以在这里看到,来自numpy的第二个导入替换了全局命名空间中的sin。在
numpy
因此,如果只有少数对象,最好导入所需的特定对象,否则只需导入模块并使用模块名称作为前缀(如第一个示例所示)。在我的示例中,如果您想同时使用math.sin和nump.sin,则只需导入模块并使用模块名称作为前缀,或者导入函数并按如下方式重命名它们:
math.sin
nump.sin
from numpy import sin as np_sin from math import sin
https://docs.python.org/2/tutorial/modules.html详细阅读
您可以从模块导入特定对象。尝试:
要将所有对象从模块导入到全局命名空间,可以使用
^{pr2}$import *
。在但这是不建议使用的,因为很容易导致名称冲突,例如,如果两个模块定义了一个名为
sin
的函数,应该调用sin
的哪个版本?在您可以在这里看到,来自
numpy
的第二个导入替换了全局命名空间中的sin
。在因此,如果只有少数对象,最好导入所需的特定对象,否则只需导入模块并使用模块名称作为前缀(如第一个示例所示)。在我的示例中,如果您想同时使用
math.sin
和nump.sin
,则只需导入模块并使用模块名称作为前缀,或者导入函数并按如下方式重命名它们:相关问题 更多 >
编程相关推荐