首页 新闻 会员 周边

内置模块和标准模块是一个意思吗

0
[已关闭问题] 关闭于 2026-06-25 20:59

1. 内置模块(Built-in Module)

定义:用 C 语言编写,编译进 Python 解释器本身的模块。

特点

  • 不需要导入就能用?❌ 错误! 内置模块也需要 import

  • 用 C 编写,性能高

  • 随 Python 解释器一起启动,无需额外加载

  • 是标准库的一部分

 

import sys

# 查看所有内置模块
print(sys.builtin_module_names)
# 输出:('_abc', '_ast', '_codecs', '_collections', '_functools',
# '_imp', '_io', '_locale', '_operator', '_signal', '_sre',
# '_stat', '_string', '_symtable', '_thread', '_tracemalloc',
# '_warnings', '_weakref', 'atexit', 'builtins', 'errno',
# 'faulthandler', 'gc', 'itertools', 'marshal', 'posix',
# 'pwd', 'sys', 'time', 'xxsubtype', 'zipimport')

 

import sys      # sys 是内置模块(C 编写)
import time     # time 是内置模块(C 编写)
import os       # os 不是内置模块(Python 编写)❌


 标准模块(Standard Module)

定义:Python 官方发布的、随 Python 一起安装的模块,但不一定是内置的

特点

  • 用 Python 或 C 编写

  • 随 Python 一起安装,但不一定编译进解释器

  • 需要时从文件系统加载

  • 位于 /usr/lib/python3.x/ 目录下

import os       # 标准模块(Python 编写,不是内置)
import json     # 标准模块(Python 编写)
import re       # 标准模块(Python 编写,但部分用 C)
import sys      # 内置模块(C 编写,也是标准模块的一部分)

Python 标准库(Standard Library)
├── 内置模块(Built-in Modules)         ← C 编写,编译进解释器
│   ├── sys
│   ├── time
│   ├── builtins
│   └── ...
│
└── 非内置标准模块(Non-built-in Standard Modules) ← Python/C 编写,从文件加载
    ├── os
    ├── json
    ├── re
    ├── collections
    └── ...

关键关系

  • 内置模块 ⊂ 标准库(所有内置模块都是标准库的一部分)

  • 标准模块 ≠ 内置模块(标准模块包括内置和非内置

import sys
import os

# 方法1:查看是否是内置模块
print(sys.builtin_module_names)
# 'sys' 在里面 → 内置模块
# 'os' 不在里面 → 非内置模块

# 方法2:查看模块文件位置
print(sys.__file__)  # 没有 __file__ 属性 → 内置模块(无源文件)
print(os.__file__)   # /usr/lib/python3.8/os.py → 有源文件,标准模块

# 方法3:检查模块类型
print(type(sys))     # <class 'module'> (内置)
print(type(os))      # <class 'module'> (普通)
*Tesla*的主页 *Tesla* | 老鸟四级 | 园豆:2074
提问于:2026-06-25 20:59
< >
分享
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册