当前位置: 首页 > news >正文

python格式化字符串的几种方式

python中有以下几种方法可以格式化字符串

方式一:C风格%操作符

这种方法偏C语言风格,C语言中的printf选项都可以当成Python的格式说明符来用,例如%s%x%f

# 示例代码00x00:
name = 'zhangsan'
salary = 12345.67
print("name is %s, salary is %.2f" %(name,salary))
# name is zhangsan, salary is 12345.67

这种方法也可以将元组换成字典,避免%操作符两侧的顺序不匹配的问题。

# 示例代码00x01:
print("name is %(name)s, salary is %(salary).2f" %{'name':name, 'salary':salary})
# name is zhangsan, salary is 12345.67

方式二:内置的format函数与str类的format方法

python3添加了高级字符串格式化机制,其表达能力比C风格要强一些,且不需要使用%操作符。

在传给format函数的格式里,逗号表示显示千位分隔符,^表示居中对齐。

# 示例代码01x00:
print("name is "+ format(name,'^20s') + ", salary is " + format(salary,'^20,.2f'))
# name is       zhangsan      , salary is      12,345.67

也可以在{}内写冒号,把格式化说明符写在冒号右边。

# 示例代码01x01:
print("name is {:<10}, salary is {:^20.2f}".format(name,salary))
# name is zhangsan  , salary is       12345.67

调用str.format方法的时候,也可以给str{}里面写上数字,用来指代format方法在这个位置所接收到的参数值位置索引

方式三:插值格式字符串

PYthon3.6添加了一种新的特性,叫做插值格式字符串,即f-string。新语法特性要求在格式字符串的前面加上字母f作为前缀。编写和阅读都更简洁一些。

# 示例代码02x00:
print(f"name is {name}, salary is {salary}")
print(f"name is {name:^10}, salary is {salary:^13.2f}")
# name is zhangsan, salary is 12345.67
# name is  zhangsan , salary is   12345.67

文章转载自:

http://xNt2c7NW.nqbcj.cn
http://AYDBX06f.nqbcj.cn
http://0YrTCca9.nqbcj.cn
http://4R8HMvI6.nqbcj.cn
http://OcNHhArh.nqbcj.cn
http://4rDZlUpF.nqbcj.cn
http://dR2V8fu3.nqbcj.cn
http://hhAQMPU4.nqbcj.cn
http://CSuV7VGY.nqbcj.cn
http://bjQTevCN.nqbcj.cn
http://urE5I8eM.nqbcj.cn
http://ReVYnW7R.nqbcj.cn
http://NKbcc5Nc.nqbcj.cn
http://NRjKmhCX.nqbcj.cn
http://1UzPsSxW.nqbcj.cn
http://tmvfrjWq.nqbcj.cn
http://psCHKhE5.nqbcj.cn
http://7Y36u3dR.nqbcj.cn
http://8t3vCsGL.nqbcj.cn
http://KBr0s7zv.nqbcj.cn
http://GOuekHoO.nqbcj.cn
http://qfejbP6A.nqbcj.cn
http://frXb27CC.nqbcj.cn
http://JyU45u30.nqbcj.cn
http://6QXKmJct.nqbcj.cn
http://NSIuu1Mu.nqbcj.cn
http://xVETitmA.nqbcj.cn
http://TnPRO4dE.nqbcj.cn
http://9MLV2IZe.nqbcj.cn
http://XzysTKv2.nqbcj.cn
http://www.dtcms.com/a/246145.html

相关文章:

  • Spring上下文模块设计
  • 图像处理 | 如何动态调整CLAHE算法中的ClipLimit参数
  • 回归-嵌入式与c概念
  • 2025年渗透测试面试题总结-长亭科技[校招]安全服务工程师(题目+回答)
  • 使用 MkDocs 构建并部署项目文档到 GitHub Pages
  • 小程序【页面离开、页面卸载】对比区分
  • (十二)深度学习计算性能:硬件架构、算法效率与理论极限分析
  • 【苍穹外卖项目】Day01
  • ZeroTier+CCproxy+Proxifier实现内网穿透和流量转发
  • uniapp 腾讯云 COS 文件管理进阶(文件夹分类与批量操作)
  • 网络安全A模块专项练习任务七解析
  • 常见的网络协议有哪些
  • 数据结构学习20250612
  • Transformer模型详解
  • Docker 构建文件代码说明文档
  • Vue 3 前端和 Spring Boot 后端生成 Docker 镜像的标准做法
  • CentOS7下MySQL8.0的安装到基本操作
  • ubuntu网络连接失败 + mobaxterm拖拽文件出错等问题解决方法
  • 42 C 语言随机数生成:rand() 与 srand() 深度解析、生成指定范围随机数、应用实战
  • vue通过路由传参时布尔类型问题
  • 力扣-198.打家劫舍
  • Excel大厂自动化报表实战(互联网金融-数据分析周报制作上)
  • 2.倒排索引
  • 补充讲解perfetto/systrace的CPU Trace信息详解和抓取方法
  • 博图SCL语言教程:灵活加、减计数制作自己的增减计数器(CTUD)
  • VUE - AxiosError-ERR_BAD_REQUEST
  • ZooKeeper详解以及应用部署(AI)
  • 日语学习-日语知识点小记-构建基础-JLPT-N4阶段(34):ようですそうですばかりのに
  • C#学习第30天: 匹配模式
  • 多模态AI爬虫:文本+图像智能抓取实战