Skip to content

Python 内置函数概览

内置函数在解释器启动时已可用,无需 importbuiltins 模块里还包含 True / False / None异常类型等;日常说的「内置函数」一般指下面表格中的可调用对象

查看说明:help(函数名)(如 help(sorted))。完整、随版本更新的说明以官方文档为准:内置函数

与自定义函数的关系见 函数

按用途分类(速查)

下列为 Python 3 中常见的内置函数/类型构造(名称与分组便于记忆,与教程习惯一致)。

类型构造与转换

名称简要说明
bool布尔类型
int整数;支持 int(s, base)
float浮点数
complex复数
str字符串
bytes不可变字节序列
bytearray可变字节序列
list列表
tuple元组
dict字典
set集合
frozenset不可变集合
slice切片对象
object所有类的基类
type取类型,或三参数动态建类

序列与迭代

名称简要说明
len长度
range整数序列
enumerate带下标迭代
zip并行迭代,聚合为元组
map映射为迭代器
filter按条件过滤
reversed逆序迭代器
sorted排序,返回新列表
iter获取迭代器;双参数形式带哨兵
next迭代器下一项
aiter异步可迭代 → 异步迭代器(3.10+)
anext异步迭代器下一项(3.10+)
sum求和,可选 start
min / max最小 / 最大
all / any全真 / 存在真;空可迭代allTrueanyFalse

数学与进制

名称简要说明
abs绝对值;复数为模
divmod商与余数
pow幂;三参数时为模幂
round四舍五入(银行家舍入等细节见文档)
bin / oct / hex整数的二 / 八 / 十六进制字符串(带前缀)
chr / ord码点 ↔ 单字符字符串

对象与命名空间

名称简要说明
id对象标识(实现相关整数)
hash哈希值(若可哈希)
repr解释器友好字符串
ascii类似 repr,非 ASCII 用转义
format格式化(format(obj, spec)
vars__dict__;无参时类似 locals()
dir属性列表
getattr / setattr / delattr按名字访问属性
hasattr是否有属性
isinstance / issubclass类型检查
super调用父类描述符
callable是否可调用
globals / locals全局 / 局部命名空间字典

类与描述符相关

名称简要说明
classmethod类方法装饰器
staticmethod静态方法装饰器
property属性装饰器

输入输出与调试

名称简要说明
print输出
input读取一行输入,返回字符串
open打开文件,返回流对象
help交互式帮助
breakpoint进入调试器(等价于 import pdb; pdb.set_trace() 的入口,可配置)

代码对象与动态执行(慎用)

名称简要说明
compile编译源码为代码对象
eval求值表达式字符串,有安全风险
exec执行代码字符串或代码对象,有安全风险
__import__实现 import 的钩子,一般不直接调用

其他

名称简要说明
memoryview不复制地访问缓冲区

说明:交互环境里 quit / exitcopyright 等也由 site 等机制挂入,一般不列入「必背内置函数」;NotImplemented 等是常量,不是函数。

常用示例(正确写法)

all / any

python
print(all([1, 2, 3]))       # True
print(all([]))              # True(空可迭代)
print(any([0, "", None]))   # False
print(any([0, 1]))          # True

元素真假规则与 布尔上下文 一致。

abs / bin / hex

python
print(abs(-10))
print(abs(3 + 4j))
print(bin(7))    # 0b111
print(hex(255))  # 0xff,前缀是 0x 不是「句点」

enumerate / zip

python
for i, c in enumerate("abc"):
    print(i, c)

print(list(zip([1, 2, 3], ["a", "b"])))  # 以较短为准

sorted / min / max

python
print(sorted([3, 1, 2]))
print(sorted("cba"))
print(min([5, 2, 8], key=abs))

isinstance

python
print(isinstance({1, 2}, set))
print(isinstance(3, (int, float)))

第二个参数可为类型元组

open(建议配合 with

python
with open("README.md", "r", encoding="utf-8") as f:
    first = f.readline()

str / bytes

python
s = str(b"hi", encoding="utf-8")
b = bytes("你好", encoding="utf-8")

安全提示

  • eval / exec:不要对用户输入或不可信字符串直接使用。
  • __import__:优先写正常 import;动态导入可用 importlib.import_module

小结

  • 内置函数以官方列表为准;本文分类速查 + 少量示例,避免冗长且易错的逐条机翻。
  • 新函数(如 aiter / anext)以当前 Python 版本文档为准。

参考