Python 面试 · 实战场景题
白板/口述:「给你一个活,你怎么写脚本?」按步骤答。
答题骨架
- 输入输出与成功标准
- 同步还是并发
- 超时、重试、限流
- 失败怎么记、怎么重跑
- 要不要换成 Java 长期服务
题 A:批量调模型 API 做摘要
要点:
- 读任务列表 → 逐条/并发请求 → 写结果 JSON/CSV
timeout+ 指数退避重试;429 要降速- 并发用线程池,设最大并发,避免把 Key 限流打爆
- 失败行单独记错误文件,支持断点续跑
题 B:读 2GB 日志,统计错误码 Top N
要点:
- 别
read()全进内存;逐行迭代或分块 - 用字典计数;若还太大,考虑外排序/分片
- 编码问题:
errors='replace'或先探查编码
题 C:设备临时采集脚本(Modbus/HTTP 上报)
要点:
- 连接失败重试、断开重连
- 采样周期用 sleep/调度;异常不能让脚本静默退出无日志
- 与正式 Gateway 的边界:脚本是验证/应急,生产采集仍走稳定服务(可接 Java/Node)
题 D:把 Excel/CSV 清洗后入库
要点:
- pandas 或 csv 模块;类型与空值处理
- 先校验再入库;批量 insert;事务或分批提交
- 密钥与 DB 连接配置环境变量化
题 E:简单定时任务
要点:
- 本机可用系统 crontab / 计划任务跑脚本
- 业务级定时更常见用 Java(XXL-JOB 等);Python 脚本适合边缘小任务
- 说明你会选型,不是什么都塞 Python
收尾金句
「脚本先保证可观测和可重跑;活稳定了再决定要不要升成长期服务。」