Python的import机制用于组织和复用代码,支持导入标准库、第三方库或自定义模块。1. 使用import module_name可导入整个模块,需通过模块名前缀访问内容,如math.sqrt(16);2. 使用from module import name可直接导入指定函数、类或变量,无需前缀,如from math import sqrt;3. 可通过as设置别名简化命名或避免冲突,如import numpy as np;4. from module import *可导入所有公开名称,但易造成命名污染,不推荐在生产环境使用;5. 自定义模块(.py文件)可在同一路径下直接导入,如import myutils;6. 包含__init__.py的文件夹可作为包,支持层级导入,如from package.module import func。注意路径配置与循环引用问题。

Python 的 import 机制是组织和复用代码的核心方式。通过 import,你可以使用标准库、第三方库或自己写的模块中的函数、类和变量。下面介绍常见的用法和使用方法。
1. 基本 import 用法
导入整个模块,使用时需要加上模块名前缀。
- import module_name:导入整个模块
- 使用 module_name.function() 或 module_name.variable 来访问内容
例如:
import math print(math.sqrt(16)) # 输出 4.0
2. 使用 from...import 导入特定内容
从模块中直接导入函数、类或变量,使用时不需要加模块前缀。
立即学习“Python免费学习笔记(深入)”;
- from module import name:导入指定名称
- from module import name1, name2:导入多个名称
例如:
from math import sqrt, pi print(sqrt(25)) # 直接调用,无需 math. print(pi) # 直接使用 pi
3. 使用 as 进行别名
给导入的模块或名称起别名,简化书写或避免命名冲突。
- import module as alias
- from module import name as alias
例如:
import numpy as np from datetime import datetime as dtarr = np.array([1, 2, 3]) now = dt.now()
4. 导入模块中的所有内容(谨慎使用)
使用 * 可以导入模块中所有公开名称,但容易造成命名污染。
例如:
from math import * print(sin(0)) # 可以直接使用,但不推荐
这种方式在大型项目中容易引发变量覆盖问题,建议只在临时测试或交互环境中使用。
5. 导入自定义模块
你写的 .py 文件也可以作为模块被导入。只要文件在 Python 路径中(如当前目录),就可以导入。
比如有一个文件 myutils.py:
# myutils.py
def greet(name):
return f"Hello, {name}"
在另一个文件中导入:
import myutils
print(myutils.greet("Alice"))
或者
from myutils import greet
print(greet("Bob"))
6. 导入包(Package)中的模块
当模块被组织在文件夹中(即包),可以使用点号层级导入。
- import package.module
- from package import module
- from package.subpackage import module
确保每个文件夹中有 __init__.py(可以为空),Python 才会将其识别为包。
基本上就这些。import 不复杂但容易忽略细节,比如路径问题或循环导入,实际使用时注意结构清晰就好。











