news 2026/3/17 13:06:14

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

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
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+)
  2. len(s)

    • 支持:str/list/tuple/dict/set/range 等
    • 陷阱:不适用于生成器/迭代器(需先 list() 或 consume)
  3. type(obj)/isinstance(obj, classinfo)/issubclass()

    • 最佳:永远优先用isinstance(x, (int, float))而不是type(x) is int
  4. input([prompt])→ str

    • 陷阱:Python 3 中永远返回 str,记得int(input())/float(input())
  5. range(start, stop[, step])

    • 内存友好(不生成列表)
    • 最佳:for i in range(len(lst)-1):→ 改用enumeratezip
  6. sum(iterable[, start])

    • 最佳:数值列表用sum();字符串别用(用 ‘’.join())
  7. max(iterable, *[, key, default])/min()

    • 案例:max(users, key=lambda u: u['age'])
  8. sorted(iterable, /, *, key=None, reverse=False)

    • 关键:返回列表,原地排序用list.sort()
    • 最佳:sorted(data.items(), key=lambda x: x[1], reverse=True)
  9. abs(x)→ 绝对值(支持 int/float/complex)

  10. 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等危险但强大的),可以告诉我,我再展开~

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/13 21:43:55

企业级部署:OLLAMA在D盘的多用户共享方案

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 开发一个多用户OLLAMA管理工具,功能包括:1.基于D盘共享目录的模型存储 2.用户权限管理系统 3.模型使用配额监控 4.自动清理缓存 5.使用情况报表生成。要求使…

作者头像 李华
网站建设 2026/3/10 8:53:00

Z-Image-Turbo_UI部署全过程:附详细截图和命令

Z-Image-Turbo_UI部署全过程:附详细截图和命令 你是否也想快速体验AI图像生成的魅力,却对复杂的环境配置望而却步?别担心,本文将手把手带你完成 Z-Image-Turbo_UI 的完整部署流程。从启动服务到访问界面,再到查看和管…

作者头像 李华
网站建设 2026/3/11 3:39:15

5个Win10定时关机的高效办公场景应用

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 创建一个Windows定时关机应用,要求:1. 可视化界面 2. 支持倒计时关机和指定时间关机两种模式 3. 可设置关机前提醒 4. 记录关机日志 5. 支持取消关机功能。…

作者头像 李华
网站建设 2026/3/12 20:44:02

30分钟打造0x0000007B诊断工具原型

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 快速开发一个0x0000007B诊断MVP工具,核心功能:1. 基本错误识别;2. 常见解决方案推荐;3. 简单日志分析。要求使用Python Flask快速搭…

作者头像 李华
网站建设 2026/3/11 17:54:42

MCJS1.8 vs 传统开发:效率提升对比

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 使用MCJS1.8和传统手动开发方式,分别实现一个任务管理应用。要求:1. 任务增删改查;2. 状态标记;3. 数据持久化。记录两种方式的时间…

作者头像 李华
网站建设 2026/3/5 16:18:01

搜索速度提升5倍,VSCode排除特定文件夹的隐藏配置你用对了吗?

第一章:搜索速度提升5倍的秘密:VSCode文件夹排除机制解析在大型项目中,VSCode 的全局搜索功能常常因扫描过多无关文件而变得缓慢。通过合理配置文件夹排除规则,可显著减少索引范围,从而将搜索响应速度提升至原来的5倍以…

作者头像 李华