为什么我必须先导入才能调用模块

时间:2017-07-04 19:00:13

标签: python

我是Python的新手,我不确定为什么必须先导入才能调用模块或函数。有没有人对此有答案?并提前感谢。一个例子如下:

import random
randomNum = random.randint(0,1)

2 个答案:

答案 0 :(得分:3)

在使用方法之前,必须先用Python导入模块,否则解释器在从所述模块调用方法时不知道该怎么做。 python中的某些函数(如print())可以在不导入任何模块的情况下调用,但对于random.randint()之类的其他函数,默认情况下不会导入该模块,因此您需要在使用前导入它。

答案 1 :(得分:1)

实际上,randommath以及您需要导入的所有类实际上都是其他Python文件。它们是代码,由制作Python的人编写,旨在使您的工作更轻松。

import视为将这些模块中的源代码复制并粘贴到程序顶部。它只是意味着您的代码现在也可以使用所有代码。因此,默认情况下并非全部导入的原因是因为当您甚至不使用它们时,所有这些模块都会产生大量开销。

如果不使用导入,当您使用random(或任何其他导入的模块)中的函数时,解释器将不知道该怎么做,因为它不会有代码来执行此操作。

同样,如果您愿意,您实际上可以导入自己的代码。因此,例如,如果您制作了一个非常酷的堆栈实现,那么您可以import将您编写到其他Python文件中的代码,以便您也可以在其中使用它。

详细了解importhttps://docs.python.org/3/reference/import.html