Python 字符串拼接与格式化最全教程

发布时间:2026/10/8 6:08:07

Python 字符串拼接与格式化最全教程 本文整理 Python 四种主流字符串拼接/格式化方法 加号拼接、f-string 格式化、% 占位符格式化、format() 格式化包含完整语法、案例、细节注意点。重点 format() 格式化 中关键字命名占位一、 加号拼接基础拼接核心规则直接使用连接多个字符串重点只能拼接字符串类型数字、浮点数等非字符串类型必须用str()强制转换实战代码name小李age20# 非字符串变量通过 str() 转换后拼接print(姓名name年龄str(age))运行结果姓名小李年龄20二、f-string 格式化推荐、最简核心规则语法f字符串{变量/表达式}支持直接嵌入变量、运算表达式、格式控制无需手动类型转换可读性最强Python3.6 推荐使用实战代码name小李age20height1.73# 支持变量、表达式运算、小数精度控制print(f姓名{name}年龄{age-1}身高:{height:.2f})运行结果姓名小李年龄19身高: 1.73三、% 占位符格式化传统写法通过不同占位符匹配对应数据类型严格校验类型类型不匹配会直接报错。1、%s 字符串占位符适配字符串类型数据title大白菜print(蔬菜%s%title)输出蔬菜大白菜2、%d 整数占位符仅支持数字类型传字符串直接报错传入浮点数会自动舍弃小数只保留整数位total7print(总价%d元%total)输出总价7元3、%f 浮点数占位符仅支持数字类型传字符串直接报错传入整数会自动补0展示为浮点数进阶格式%m.nf—— 总宽度m位包含小数点保留n位小数price19.99# 总宽度5位保留2位小数print(价格为%5.2f%price)输出价格为19.99四、format() 格式化通用、功能强大str.format()是进阶字符串格式化工具以{}为占位符替代繁琐的 % 写法可读性更高、支持参数复用、适配多场景是项目常用写法。写法1无编号按位置传参顺序匹配{}不写数字参数按传入顺序依次填充text姓名{}年龄{}restext.format(张三,24)print(res)输出姓名张三年龄24写法2数字编号占位参数复用、调整顺序通过数字编号指定参数位置支持同一个参数多次复用text{0}今年{1}岁{0}从事开发工作restext.format(小李,26)print(res)输出小李今年26岁小李从事开发工作写法3关键字命名占位最常用、可读性强通过参数名精准匹配无需关注顺序适合参数较多的场景text公司{company}行业{industry}restext.format(company阿里云,industry人工智能)print(res)输出公司阿里云行业人工智能写法4传入字典批量填充通过**解包字典批量匹配占位符高效填充多组数据info{title:分析师报告,content:AI行业持续增长}text文档类型{title}内容{content}restext.format(**info)print(res)输出文档类型分析师报告内容AI行业持续增长写法5对象属性填充支持直接访问对象属性填充到字符串中适配面向对象场景classDoc:def__init__(self):self.type公司公告self.msg完成AI企业并购dDoc()res文件{doc.type}详情{doc.msg}.format(docd)print(res)输出文件公司公告详情完成AI企业并购五、四种方法优缺点总结方法优点缺点适用场景 加号拼接简单直观新手易上手需手动类型转换多变量拼接繁琐少量简单字符串拼接f-string语法简洁、无需转义、支持运算格式化、可读性拉满仅 Python3.6 支持日常开发、绝大多数场景首选% 占位符语法经典、兼容老旧代码类型校验严格、可读性差、不支持参数复用维护老旧项目format()功能全面、支持多传参方式、兼容性好语法比f-string稍繁琐多参数、动态填充、兼容低版本Python
延伸阅读

更多相关文章

2026/10/8 6:08:07

大模型安全之四十二:确保 GenAI 合规的实施指南

引言 监管要求本身只是愿景,真正的挑战在于落地。“知道要求”与“证明合规”之间,隔着数月的系统性工作。 本文基于一套完整的 GenAI 合规实施经验,总结出安全人员和开发人员如何协同工作,使 GenAI 系统满足合规需求。 核心原则…

2026/10/8 6:08:07

dev TreeList 常用属性 菜单示例:TaoToken 统一 Key 接入实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/8 6:58:10

一文搞懂 LangGraph 中间件执行时机

前言大家好!最近在深耕 LangGraph 智能体开发时,很多开发者都会用到中间件核心功能。但大部分人对中间件的执行时机、适用场景比较模糊,无法区分 Node 样式和 Wrap 样式的本质区别,也不清楚 before/after 系列钩子的具体使用场景。…

2026/10/8 6:58:10

Android 软键盘与输入框对不齐?聊聊输入交互里的坐标问题

getGlobalVisibleRect 拿到的"全局可见区域",在输入框被键盘顶起来之后可能已经不准了——很多人在这上面栽了跟头。 前言 很多 App 都有这个交互:键盘弹着,用户点输入框外面的区域,键盘收起来。实现思路很简单——监听全局触摸事件,如果点击点不在输入框范围内…

2026/10/8 6:58:10

阿里金九银十Java面试突击指南全网首次公开!

今年金三银四已过,不知道大家都拿到Offer没有,如果没有的话,希望大家不要怪LZ凡尔赛了(手动狗头)。LZ截止今天为止已经收到了第9家公司的Offer,这张的Offer的话给到28k*14薪。由于个人原因,LZ没…

2026/10/8 6:53:10

柳州少儿读书会哪个好一点

柳州少儿读书会哪个好一点?我蹲这个赛道5年,见过太多家长踩坑,先说说我摸透的行业真相。这两年柳州做少儿阅读的不少,分两类:一类是普通书店搭的读书会,大多是找兼职老师带读,内容要么是碎片化读…

2026/10/5 6:32:56

Jev+Agent接管浏览器:browser-use实战与jev-ultrafast性能优化

1. 从“Jev”说起:为什么我要把Agent接进浏览器“Jev”这个词最近在圈子里出现的频率越来越高,很多人第一次听到会以为是某个新模型的名字,其实它更像是一种思路——把Jev模型的能力当作底座,通过Agent的方式去接管浏览器&#xf…

2026/10/7 8:18:33

多智能体集群实战:DeepAgents编排、MCP与A2A协议及Skills体系

1. 从"单兵作战"到"集群协同":多智能体编排到底在解决什么问题如果你最近在折腾 Agent 相关的东西,大概率会有一种感觉:单个 Agent 能做的事情,其实很快就摸到天花板了。你给它一个提示词,挂几个工…

2026/10/8 6:05:44

无源低通滤波器设计实战:从RC到LC,手把手教你避开那些坑

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/8 0:02:17

自然数立方等于连续奇数之和:从证明到编程验证

十几年来我一直游走在数学科普和编程教学这两块内容之间,对“看起来像魔法、拆开全是数学”的结论总是格外敏感。最近翻资料时又撞见一句话:任何一个自然数 m 的立方,都可以写成 m 个连续奇数之和。2 的立方等于 3 加 5,3 的立方等…

2026/10/8 0:02:17

C#上位机SSH连接实战:用SSH.NET补齐超时、批量与密钥认证

简介:这是一份基于 C# 开发的 SSH 连接功能半成品工程,原本作为另一个主项目的子功能模块,现独立打包分享。工程采用 WinForms 界面,包含源码、解决方案、安装部署工程、NuGet 依赖包及说明文档,适合正在做远程连接、网…

2026/10/8 0:02:17

Java SpringBoot一体化智能售后系统设计与实现全解析

毕业设计年年做,Java Web 方向的题目翻来覆去就那么几个,但“一体化智能售后系统”这个题,每次看到我都觉得值得认真聊一聊。它不是一个简单 curd 堆出来的管理系统,而是把客户、工单、派单、处理、回访、统计整条链路串起来的一套…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑