Python内置函数全解析:30个核心函数的语法、案例与最佳实践

Python 的内置函数(built-in functions)是 Python 解释器自带的“工具箱”,无需 import 任何模块就能直接调用。它们是 Python 高效、简洁风格的核心支柱。

截至 2026 年(Python 3.12–3.14 系列),官方文档中共有 约 70 个 内置函数,但真正每天高频使用 + 面试/项目必备 的核心函数大约在 25–35 个 之间。

下面精选 30 个最核心、最实用的内置函数(按使用频率 + 重要性粗略排序),附带:

  • 基本语法
  • 经典/实用案例
  • 2025–2026 最佳实践 & 小陷阱

1–10:最基础 & 最常用(几乎每天都会碰)

  1. print(*objects, sep=' ', end='\n', file=None, flush=False)
  • 案例:print("age:", 25, "city", "LV", sep=" | ") → age: | 25 | city | LV
  • 最佳:用 f-string 替代 90% 的 print;调试时用 print(f"{var=}") (3.8+)
  1. len(s)
  • 支持:str/list/tuple/dict/set/range 等
  • 陷阱:不适用于生成器/迭代器(需先 list() 或 consume)
  1. type(obj) / isinstance(obj, classinfo) / issubclass()
  • 最佳:永远优先用 isinstance(x, (int, float)) 而不是 type(x) is int
  1. input([prompt]) → str
  • 陷阱:Python 3 中永远返回 str,记得 int(input()) / float(input())
  1. range(start, stop[, step])
  • 内存友好(不生成列表)
  • 最佳:for i in range(len(lst)-1): → 改用 enumeratezip
  1. sum(iterable[, start])
  • 最佳:数值列表用 sum();字符串别用(用 ”.join())
  1. max(iterable, *[, key, default]) / min()
  • 案例:max(users, key=lambda u: u['age'])
  1. sorted(iterable, /, *, key=None, reverse=False)
  • 关键:返回列表,原地排序用 list.sort()
  • 最佳:sorted(data.items(), key=lambda x: x[1], reverse=True)
  1. abs(x) → 绝对值(支持 int/float/complex)
  2. round(number, ndigits=None)
    • 陷阱:银行家舍入(4 舍 6 入 5 取偶)
    • 最佳:金融场景用 decimal 模块

11–20:迭代神器 & 函数式编程(写优雅代码的关键)

  1. enumerate(iterable, start=0)
    • 最佳:for i, v in enumerate(lst, 1):(从 1 开始编号)
  2. zip(*iterables, strict=False) (3.10+ strict)
    • 案例:names, scores = zip(*sorted(zip(names, scores), key=lambda x:x[1]))
  3. map(function, iterable, ...)
    • 最佳:list(map(int, input().split()))list(map(str.strip, lines))
  4. filter(function, iterable)
    • 最佳:现在多用列表推导式 [x for x in lst if cond] 更可读
  5. all(iterable) / any(iterable)
    • 经典:if all(x > 0 for x in nums): / if any(isinstance(x, str) for x in row):
  6. reversed(seq)
    • 只对 sequence 有效(list/tuple/str/range);生成器用 reversed(list(gen)) 或自己写
  7. iter(object[, sentinel])
    • 高级:for line in iter(input, 'q'):(输入 q 退出)
  8. next(iterator[, default])
    • 最佳:安全取第一个元素 next(iter(lst), None)
  9. list() / tuple() / set() / dict()
    • 转换神器
  10. str(object='') / repr(object) / ascii(object)
    • 最佳:调试用 repr(),日志/显示用 str()

21–30:进阶 & 实用工具函数

  1. open(file, mode='r', buffering=-1, encoding=None, ...)
    • 最佳:永远用 with open(..., encoding='utf-8') as f:
  2. dir([object]) → 属性列表
    • 调试神器:dir([]) 看 list 有哪些方法
  3. help([object])
    • 交互式文档
  4. id(object) → 内存地址
    • 理解 is / == 区别
  5. hash(object) → 哈希值
    • 陷阱:自定义类要实现 __hash__ 且可哈希
  6. pow(base, exp[, mod])
    • 三参数时是高效模幂运算(密码学常用)
  7. divmod(a, b) → (商, 余数)
    • 案例:quot, rem = divmod(2026, 60)
  8. bin(x) / oct(x) / hex(x)
    • 前缀 ‘0b’/’0o’/’0x’
  9. chr(i) / ord(c)
    • Unicode 转换(处理 emoji、中文很方便)
  10. __import__() (极少直接用)
    • 动态导入模块(框架底层常用)

快速记忆口诀(2026 版高频 Top 15)

print → len → type → range → sum/max/min/sorted
enumerate → zip → map/filter/all/any
input → open → str/int/float/list/tuple/set/dict

推荐学习路径(小白 → 熟练)

  1. 先彻底掌握 1–10
  2. 熟练使用 enumerate + zip + map/filter + all/any(写出 Pythonic 代码)
  3. 日常调试必备:dir / help / repr / vars
  4. 进阶:理解 iter/next/generator 与 reversed 的区别

你平时最常忘/用错的是哪几个内置函数?
或者你想深入看某个函数的更多黑魔法用法(比如 getattr / setattr / eval / exec / compile 等危险但强大的),可以告诉我,我再展开~

文章已创建 3958

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

相关文章

开始在上面输入您的搜索词,然后按回车进行搜索。按ESC取消。

返回顶部