下面就是Python中import与from import使用和区别解读的完整攻略。
什么是Python中的import语句?
在Python中,为了实现代码的复用,我们通常会将一些常用或自定义的函数/类存储在一个文件中,这个文件就是模块(module)。而Python中的import语句可以将其他的模块导入到我们的代码中,从而使我们可以使用其中的函数/类。
Python中import的使用方法
Python中的import语句有两种使用方法:
- 直接import模块
import module_name
例如,我们有一个叫做math_utils.py
的模块,其中定义了一个名叫add
的函数。我们可以在需要使用该函数的文件中使用import
来将该模块导入到当前文件中:
import math_utils
print(math_utils.add(3, 4))
需要注意的是,在使用import
导入模块之后,使用该模块中的函数/类时需要以模块名作为前缀。
- 使用from import进行模块中函数/类的单独导入
from module_name import foo, bar
例如,我们仍然使用math_utils.py
模块,但是现在我们只需要使用其中的add
函数。我们可以使用from import
语法将该函数单独导入:
from math_utils import add
print(add(3, 4))
需要注意的是,使用from import
语法导入函数/类时,导入的函数/类可以直接使用,不需要以模块名作为前缀。
Python中import与from import的区别
Python中的import与from import语句有一个比较明显的区别,那就是在使用时是否需要加上模块名前缀。
使用import导入整个模块时,我们需要在该模块中使用的函数/类前加上模块名前缀;使用from import导入函数/类时,我们可以直接使用这些函数/类,不需要加上模块名前缀。
此外,当模块中有多个同名函数/类时,使用from import时可能会出现命名冲突的问题。
下面是两个示例来更好地说明import与from import的区别。
- import示例
假设我们有两个文件,test1.py
和test2.py
,代码如下:
# test1.py
import math_utils
print(math_utils.add(3, 4))
# math_utils.py
def add(a, b):
return a + b
执行test1.py
之后,可以得到以下输出:
7
需要注意的是,我们在使用math_utils
模块中的add
函数时,需要加上模块名前缀math_utils
。这是因为我们使用了import
语句导入整个模块。
- from import示例
现在我们将test1.py
修改为:
# test1.py
from math_utils import add
print(add(3, 4))
# math_utils.py
def add(a, b):
return a + b
执行test1.py
之后,可以得到以下输出:
7
需要注意的是,我们在使用add
函数时,不需要加上模块名前缀,这是因为我们使用from import
导入了这个函数。
总结
Python中的import语句可以将其他模块中的函数/类导入到我们的代码中,实现函数/类的复用。import语句有两种使用方法:一种是直接import整个模块;另一种是使用from import导入单个函数/类。使用import时需要在函数/类前加上模块名前缀,而使用from import导入函数/类时不需要加上模块名前缀,容易出现命名冲突。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python import与from import使用和区别解读 - Python技术站