【Python 高频 API 速学 ③】

一、为什么先学这 5 个?

• 它们覆盖了「切 → 洗 → 拼 → 换 → 排版」整条链路。
• 任意一段文本处理脚本,80 % 的操作都能用这 5 个方法写完。


二、五虎上将一览

方法作用典型场景易踩的坑
split(sep=None)按分隔符切成列表日志拆字段、CSV 解析连续分隔符会产生空串
strip(chars=None)去首尾空白/指定字符清洗用户输入、去换行只能去首尾,中间不动
join(iterable)用指定字符串把列表拼回去路径拼接、SQL 占位符元素必须全是 str
replace(old, new, count=-1)批量替换子串脱敏、模板渲染默认全部替换,count 可限次
format / f-string格式化输出日志、报表、邮件旧版 % 格式化已过时

三、一行代码场景秀

  1. 把网址参数变字典
params = dict(pair.split('=', 1) for pair in query.strip('&').split('&') if pair)
  1. 清洗并重组文件路径
clean_path = '/'.join(part.strip() for part in raw.split('/') if part)
  1. 日志脱敏:手机号中间四位换成 ****
masked = re.sub(r'(\d{3})\d{4}(\d{4})', r'\1****\2', text)

(先用 replace 也行:text.replace(text[3:7], '****')

  1. 批量生成 SQL 占位符
placeholders = ', '.join(['%s'] * len(columns))
sql = f"INSERT INTO {table} ({', '.join(columns)}) VALUES ({placeholders})"
  1. 模板邮件格式化
body = """
Hi {name},Your order #{order_id} has been shipped on {date}.
""".format(name=name, order_id=oid, date=ship_date)

或更现代的 f-string:

body = f"Hi {name}, your order #{oid} shipped on {ship_date:%Y-%m-%d}"

四、mini 实战:5 行搞定 nginx 日志转 CSV

输入:空格分隔的原始日志行
输出:ip, time, method, url, status, size

import csv, sys
for line in sys.stdin:parts = line.strip().split()csv.writer(sys.stdout).writerow([parts[0], parts[3][1:], parts[5][1:], parts[6], parts[8], parts[9]])

跑一下:

$ tail -n 100 access.log | python log2csv.py > log.csv

五、一条记忆口令

“split 分,strip 洗,join 拼,replace 换,format 美。”

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/diannao/94873.shtml
繁体地址,请注明出处:http://hk.pswp.cn/diannao/94873.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

前端百分比展示导致后端 BigDecimal 转换异常的排查与解决

在开发一个订单预算系统时,我们需要在前端动态计算「利润率差额」,格式为百分比(带 % 符号)保留4位小数,但实际传给后端时必须是纯数字(浮点数),以便后端正常以 BigDecimal 类型接收…

论文学习21:Pyramid Scene Parsing Network

代码来源 GitHub - hszhao/PSPNet: Pyramid Scene Parsing Network, CVPR2017. 模块作用 对于不受限制的开放词汇和多样化场景,场景解析极具挑战性。本文结合金字塔池化模块和提出的金字塔场景解析网络(PSPNet),利用基于不同区…

从手工编码到自动化:APP开发的效率革命

摘要**熬夜敲代码、反复调试改 Bug,项目进度却依旧缓慢,这是无数 APP 开发者在手工编码时代的真实写照。更让人崩溃的是,即便投入大量时间精力,最终交付的 APP 还可能存在各种问题。难道 APP 开发注定如此艰辛?不&…

数据结构5.(哈希表及数据的排序和查找算法)

1.哈希算法将数据通过哈希算法映射成一个键值,存取都在同一位置实现数据的高效存储和查找,将时间复杂度尽可能降低至O(1),同样的参数返回同样的整数,不同的参数返回不同的整数2. 哈希碰撞多个数据通过哈希算法得到的键值相同&…

数据结构Java--7

排序排序就是使一串记录,按照其中的某个或某些关键字的大小,递增或递减的排列起来的操作排序的稳定性假若有以下数组,数组中存在两个5,这里区分标记如果排序之后,红色的5仍然在蓝色的5前面,我们就认为该排序…

《Node.js与 Elasticsearch的全文搜索架构解析》

文档数量跨越百万级门槛,传统数据库的查询方式就像在没有索引的图书馆里逐架翻书,不仅耗费时间,更难以捕捉文字背后的深层关联。此时,由Node.js与Elasticsearch共同构建的全文搜索系统,便成了梳理信息脉络的无形之手——它能在毫秒之间,从海量文档中识别用户的真实意图,…

Python人工智能matplotlib中markers属性介绍

在 Matplotlib 中&#xff0c;marker 用于标记数据点&#xff0c;可通过多种参数自定义样式。以下是详细说明及示例&#xff1a; 1. 基础设置常用 marker 类型&#xff1a; . : 点 , : 像素 o : 圆圈 v : 下三角形 ^ : 上三角形 < : 左三角形 >…

【Mac】MLX:Lora微调工作流

本文详细介绍如何在Mac电脑上使用Apple的MLX框架&#xff0c;通过LoRA&#xff08;低秩适配&#xff09;技术对大语言模型&#xff08;如Qwen3-4B-Instruct&#xff09;进行微调。以下流程适用于8月9日的Mac mini M4 16GB&#xff0c;涵盖模型获取、数据准备、微调、运行及模型…

润乾报表、帆软报表的开源替代品—JimuReport(积木报表)

国产报表工具选型指南&#xff1a;润乾报表 vs 积木报表&#xff08;JimuReport&#xff09; 如果你在寻找润乾报表、帆软报表的替代产品&#xff0c;JimuReport&#xff08;积木报表&#xff09;是一个值得考虑的选择。它不仅功能全面&#xff0c;而且操作简单&#xff0c;非常…

Tiger任务管理系统-12

今天整了一个老虎网站介绍这套任务管理开源系统&#xff0c;防止链接丢失&#xff0c;体验了一把AI编程&#xff0c;虽说确实省了很多事&#xff0c;但源码确实不敢恭维&#xff0c;尤其是修改的时候&#xff0c;真心累&#xff0c;所以还是要自己掌握核心&#xff0c;AI一时爽…

智慧农业-无人机视角庄稼倒伏农作物倒伏识别分割数据集labelme格式541张1类别

数据集格式&#xff1a;labelme格式(不包含mask文件&#xff0c;仅仅包含jpg图片和对应的json文件)图片数量(jpg文件个数)&#xff1a;541标注数量(json文件个数)&#xff1a;541标注类别数&#xff1a;1标注类别名称:["fall"]每个类别标注的框数&#xff1a;fall co…

电子电气架构 --- 电气/电子架构迁移已拉开帷幕

我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 做到欲望极简,了解自己的真实欲望,不受外在潮流的影响,不盲从,不跟风。把自己的精力全部用在自己。一是去掉多余,凡事找规律,基础是诚信;二是…

PPT漏斗图,让数据更美观!

PPT漏斗图制作全攻略&#xff1a;从入门到精通的实用技巧和模板推荐 无论你是职场新人还是PPT老手&#xff0c;在做数据报告或者展示项目进度的时候&#xff0c;你总觉得图表太单调&#xff0c;数据太复杂吗&#xff1f;这时&#xff0c;一张逻辑清晰、结构简单的漏斗图&#…

深入解析C++流运算符(>>和<<)重载:为何必须使用全局函数与友元机制

目录 一、为什么需要重载为全局函数 成员函数重载的问题 全局函数的优势 二、实现细节 1、输出运算符<<的重载 关键部分详解 1. 类定义部分 2. 运算符重载实现 3. main函数中的使用 为什么这样设计&#xff1f; 执行流程 输出结果 2、输入运算符>>的重…

ENS-317 Modbus TCP / 通用模式网关

在工业自动化的复杂网络中&#xff0c;以太网设备与串口设备的 “语言不通” 常常成为数据流转的阻碍。上海泗博自动化推出的 ENS-317 Modbus TCP / 通用模式网关&#xff0c;以强大的协议转换能力、灵活的配置方式和工业级可靠性&#xff0c;为设备互联提供一站式解决方案&…

AcWing 6478. 谁进线下了?III

原题链接 6478. 谁进线下了&#xff1f;III - AcWing题库 这是一道睿抗&#xff08;省赛&#xff09;题 一开始睿抗是啥都不知道 然后一看是省赛吓得我不轻 但读完题简简单单 一道很水的模拟题&#xff08;谁能解释一下睿抗啥意思&#xff09; 一起开康康 题目 Xepa Le…

openpnp - 不连接设备,只大概测试一下摄像头是否好使

文章目录openpnp - 不连接设备&#xff0c;只大概测试一下摄像头是否好使概述笔记备注备注ENDopenpnp - 不连接设备&#xff0c;只大概测试一下摄像头是否好使 概述 顶部相机摄像头在拆装过程中&#xff0c;可能被手上的静电打坏了。 现在和电脑连接是正常的&#xff0c;但是…

使用Python提取PDF大纲(书签)完整指南

&#x1f50d; 一、PDF大纲简介&#x1f4cc; ​PDF大纲&#xff08;Outline&#xff09;​​ 是PDF文档中的导航结构&#xff0c;通常显示在阅读器的侧边栏中&#xff0c;方便用户快速跳转到文档的不同部分。大纲通常以层级结构组织&#xff0c;包含标题和对应的页面位置。本文…

第39周——训练自己的数据集

目录 1. 下载数据 2. 配置开发环境 3. 预处理数据 &#x1f368; 本文为&#x1f517;365天深度学习训练营 中的学习记录博客&#x1f356; 原作者&#xff1a;K同学啊 1. 下载数据 百度网盘&#xff1a;百度网盘 请输入提取码 压缩文件中有两个文件夹&#xff0c;分别是Annot…

CentOS7中Docker的安装与卸载

CentOS7 从零开始:Docker 安装与卸载全指南(新手友好版) 作为一名刚接触 Linux 和容器技术的新手,你是否曾在安装 Docker 时被各种命令和报错搞得一头雾水?比如执行 yum install docker 时提示 “仓库不存在”,或者启动 Docker 后用 docker version 只显示 client 不显示…