python中的format

news/2025/2/7 18:19:35/文章来源:https://www.cnblogs.com/lmc7/p/18703062

Python 中的 format() 方法用于格式化字符串,功能非常强大、灵活,适合生成带变量的动态字符串。下面是 format() 的详细用法和实例讲解。


1. 基本语法

"模板字符串 {位置/名称}".format(参数)
  • 花括号 {} 是占位符,format() 方法会将参数填入对应的占位符中。
  • 参数可以按位置或按名称进行引用。

2. 按位置填充

# 基本位置填充
print("我叫 {},今年 {} 岁".format("Alice", 25))

输出:

我叫 Alice,今年 25 岁

说明: {} 默认按顺序填充。如果有多个占位符,按参数顺序对应。

显式位置索引

print("{1} 是 {0} 的朋友".format("Alice", "Bob"))

输出:

Bob 是 Alice 的朋友

这里使用 1 来指定第二个参数填入。


3. 按名称填充

print("我是 {name}, 来自 {city}".format(name="Alice", city="Shanghai"))

输出:

我是 Alice, 来自 Shanghai

{} 中直接写参数名称,通过关键字参数传值。


4. 混合使用位置和名称

print("编号 {0} 是 {name}".format(101, name="Alice"))

输出:

编号 101 是 Alice

5. 格式化数值

format() 支持对数值进行格式化,如设置小数位数、对齐方式、百分比等。

5.1 保留小数位

pi = 3.14159265
print("圆周率保留两位小数: {:.2f}".format(pi))

输出:

圆周率保留两位小数: 3.14

:.2f 表示保留两位小数,f 表示浮点数。


5.2 转为百分比

score = 0.856
print("得分: {:.1%}".format(score))

输出:

得分: 85.6%

5.3 数字千分位

money = 1234567890
print("金额: {:,}".format(money))

输出:

金额: 1,234,567,890

6. 对齐方式

  • < 左对齐
  • ^ 居中对齐
  • > 右对齐

实例

print("|{:<10}|{:^10}|{:>10}|".format("左对齐", "居中", "右对齐"))

输出:

|左对齐      |   居中    |      右对齐|

7. 填充字符

print("{:*^20}".format("标题"))

输出:

********标题********

使用 * 作为填充字符,居中对齐,总宽度为 20。


8. 进制转换

print("二进制: {:b}, 八进制: {:o}, 十六进制: {:x}".format(255, 255, 255))

输出:

二进制: 11111111, 八进制: 377, 十六进制: ff

9. 转义大括号

如果需要输出大括号 {},可以使用双大括号 {{}}

print("大括号示例: {{}}".format())

输出:

大括号示例: {}

10. f-string 和 format() 的比较

Python 3.6 引入了更简洁的 f-string 格式化方式:

name = "Alice"
age = 25
print(f"我叫 {name},今年 {age} 岁")

推荐使用 f-string

  • 更简洁,性能更好
  • 但是 format() 在需要复杂格式时仍然非常实用。

总结

format() 方法功能强大,几乎可以满足所有字符串格式化需求,包括:

  • 位置与命名参数填充
  • 数值格式化(小数位、千分位、百分比等)
  • 对齐与填充字符
  • 进制转换等

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

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

相关文章

大模型时代的软件进化论:恐龙式软件 vs. 猴群式软件

春节期间,IT圈内两件大事持续发酵,一件是中国大模型DeepSeek R1的开源震动全球AI界,让中国科技界扬眉吐气,廉价大模型走入千家万户;另一件是SAP被客户居然之家告上法庭,要求索赔590万开发费用和1700万软件费用,最终法院判SAP退还350万研发费用。这两件事的背后,实际上映…

xtrabackup 命令备份

Percona XtraBackup 安装下载地址: https://downloads.percona.com/downloads/Percona-XtraBackup-8.0/Percona-XtraBackup-8.0.35-32/binary/redhat/8/x86_64/percona-xtrabackup-80-8.0.35-32.1.el8.x86_64.rpm 官方YUM安装说明: Percona 版本和 YUM - Percona XtraBackup在…

React—03—类组件中事件处理函数的this绑定、事件处理函数的传参;jsx的条件判断渲染;jsx的循环渲染

零、如何给html元素加事件监听 1.原生方式:通过querySelector()方法,捕捉到元素,比如说button元素,然后通过btn.onclick = () =>{}或者通过btn.addEventListensers(click, ()=>{})的方式 2.vue的方式,在元素上使用v-on指令,比如@click 3.react方式,在元素上使用事…

巧用通义灵码,提升前端研发效率

本次分享,主题是利用通义灵码提升前端研发效率。分享内容主要包括以下几部分:首先,我将从前端开发的角度介绍对通义灵码的基本认识;其次,我将展示通义灵码在日常研发中的应用案例;然后,我将通过实例说明,良好的设计能够显著提升通义灵码的效果。在第四个部分,我将介绍…

linux服务器离线安装ollama

一、前言 公司服务器在线安装ollama总是超时连接不上,想着本质就是个安装包,离线安装也可以。固有了这样的一篇博客记录一下。 二、流程 1、查看服务器cpu架构 执行指令 lscpu# x86_64 CPU选择下载ollama-linux-amd64 # aarch64|arm64 CPU选择下载ollama-linux-arm642、下载对…

数字孪生与智慧工厂完美融合,推动智能制造新时代

随着工业4.0和智能制造的浪潮席卷全球,数字孪生技术成为了现代工业发展的重要驱动力。数字孪生,作为一种能够在虚拟环境中精确再现物理实体的技术,通过实时数据的流动和反馈,创建了一个高度仿真的“数字模型”,而这一模型不仅仅停留在静态的模拟阶段,而是与现实世界保持实…

【字符串处理之sscanf函数】读入HH:MM:SS:NN型时间;读入日期

读取时间 HH:MM:SS:NN型 函数 //转为毫秒表示,方便比大小 int get(string time) {int h, m, s, ms;//从字符串内读数据sscanf(time.c_str(), "%d:%d:%d.%d", &h, &m, &s, &ms);return h * 3600000 + m * 60000 + s * 1000 + ms; }样例1 输入 3 23:4…

【字符串处理sscanf】读入HH:MM:SS:NN型时间

读取时间 HH:MM:SS:NN型 函数 //转为毫秒表示,方便比大小 int get(string time) {int h, m, s, ms;//从字符串内读数据sscanf(time.c_str(), "%d:%d:%d.%d", &h, &m, &s, &ms);return h * 3600000 + m * 60000 + s * 1000 + ms; }样例1 输入 3 23:4…

如何阅读一本书

明确自己阅读的目的扩充知识:期望扩充哪方面的知识呢 研究他人的方法论? 深挖某些知识点?当前看的内容是否合适? 应用方法论SQ3R 阅读法Survey (预览): 快速浏览标题、目录、摘要等,了解文章或书籍的大意。 Question (提问): 对内容提出问题,带着问题阅读能提高理解力。 …

【转载】在windows下vscode终端里无法运行脚本解决方案

windows下使用vscode中的终端运行脚本出现以下的问题解决方案: 以管理员身份打开vscode,任意打开一个终端 在终端中输入get-ExecutionPolicy,若返回Restricted,说明现在是vscode是被禁止运行脚本 输入set-ExecutionPolicy RemoteSigned 这段命令 再看看现在的状态,输入 ge…

(转!)A卡玩转Stable Diffusion

转:https://www.fujieace.com/ai/amd-stable-diffusion.html今天,一位网友通过查看“设备管理器”,发现他的显卡是“AMD Radeon RX 580 2048SP”。因此,Stable Diffusion用显卡却怎么也跑不起来?一生成图片就报错误“rocBLAS error: Could not initialize Tensile library…

心脏支架 All In One

心脏支架 All In One心脏支架 All In One 冠状动脉成形术和支架植入术 冠状动脉成形术和支架置入术又称为经皮冠状动脉介入治疗。心脏支架副作用https://www.mayoclinic.org/zh-hans/tests-procedures/coronary-angioplasty/about/pac-20384761 demos(🐞 反爬虫测试!打击盗版…