文章目录

  • 1.基本用法
  • 2.填充与对齐
  • 3.数字格式化

  在python中,我们在输出字符串常用format方法设置一些特定的格式,以美化结果,同时便于更改字符串中指定内容。本文总结了format的常用方法。


1.基本用法

  format通过字符串中的花括号{}来识别和替换字符串,由此达到格式化字符串的目的。填充内容位置的识别,有按顺序自动替换、通过数字指定顺序、通过关键字指定位置三种方式。各方式示例如下:

  • 按顺序替换:此时花括号内无需指定位置,format中的内容按照花括号出现的顺序一一对应填充。
print("我来自{},我今年{}岁了".format("东北",15))
## 我来自东北,我今年15岁了
  • 通过数字指定:在花括号中标明数字n,则format中第n个元素填入对应花括号内(n从0开始)。
print("我叫{1},来自{2},今年{0}岁".format(15,"小王","天津"))
## 我叫小王,来自天津,今年15岁
print("我来自{0},我今年{1}岁了,我来自{0}".format("东北",'15'))
## 我来自东北,我今年15岁了,我来自东北

  从上述示例可看出,此时format中元素的个数不一定要与字符串中花括号个数相同,只要花括号中指定位置有元素对应即可。

  • 通过关键字指定:我们还可以在花括号中设置填入内容的关键字,在format中通过 关键字=填充内容 的格式进行替换。
print("我来自{place},我今年{age}岁了".format(place="东北",age=15))
## 我来自东北,我今年15岁了

2.填充与对齐

  有时我们需要将字符串按照某些格式进行对齐,因此需要在花括号{}中添加更多的说明内容。为了与填充位置说明的内容区分,我们用:将位置说明与填充字符说明分隔开。
  在:后面指定用于填充的字符(只能是一个字符),若不指定则默认用空格填充。在填充字符后可以添加对齐方式,对齐方式如下表所示:

符号 对齐方式
< 左对齐
> 右对齐
^ 居中

在对齐符号后,可以用数字说明该处的总字符长度。示例如下:

print("我是{0:>5},来自{1:*^6}".format("小王","天津"))
## 我是   小王,来自**天津**

第一处需要五个字符,右对齐,但format中只有两个,由于未指定填充内容,因此用空格填充,小王右对齐;第二处需要六个字符,居中对齐,填充字符为*,因此天津居中。

3.数字格式化

  对于字符串中出现的数字内容,有时我们也需要将其保留指定位数,便于他人阅读,format还提供了对数字格式的指定。与对齐内容相同,有关数字格式的指定内容仍放在:后。
  对于数字类型,format中能够设置多种格式,具体表示方法如下表所示:

格式 描述
{:b} 将数字用二进制表示
{:c} 将整数转换为对应的Unicode字符串
{:d} 将数字用十进制整数表示(format中相应内容应是整数)
{: o} 将数字用八进制表示
{:x} 将数字用十六进制表示
{:f} 将数字用浮点数表示
{:e} 将数字用科学计数法表示
{:%} 将数字用百分数表示
{:,} 用逗号分隔数字

其中对于f,e和%格式,可在冒号后加一个小数点和数字,表示保留几位小数,说明如下:

格式 描述
{:.3f} 保留三位小数
{:.2%} 将数字用百分数表示,且小数点后保留两位小数

示例如下:

print("我{:>5d}岁了".format(32))  # 5个数字,右对齐,缺失用空格填充
## 我   32岁了print("我{:0>5d}岁了".format(32))  # 5个数字,右对齐,缺失用0填充
## 我00032岁了print("我的存款为{:.2f}元".format(12345))  # 保留两位小数
## 我的存款为12345.00元print("本季度利润为{:.3f}元".format(1456.265897))  # 保留三位小数
## 本季度利润为1456.266元print("你排名前{:.2%}".format(0.354))  # 百分比形式,保留两位小数
## 你排名前35.40%print("我的存款为{:.2e}元".format(12345))  # 科学计数法并保留两位小数
## 我的存款为1.23e+04元print("本季度利润为{:,}元".format(1456265.897))  # 用逗号分隔数字
## 本季度利润为1,456,265.897元

Python基础——format格式化相关推荐

  1. python基础_格式化输出(%用法和format用法)(转载)

    python基础_格式化输出(%用法和format用法) 目录 %用法 format用法 %用法 1.整数的输出 %o -- oct 八进制 %d -- dec 十进制 %x -- hex 十六进制 ...

  2. 七、python基础:格式化占位符

    七.python基础:格式化占位符 1.为什么要有占位符? 我们先看没有占位符的情况 a = 1 print(a) 这个可以正常输出:1 但是,假如我们要让它输出的结果带上说明文字呢?例如这样:&qu ...

  3. Python基础之格式化输出

    Python基础之格式化输出 1.Python格式化输出 1.1.字符串格式化输出I 引子 字符串格式化输出,主体是字符串,这个方法适用于字符串类型.有时候,我们会遇到这样的需求:我们想要制作一个字符 ...

  4. Python的format格式化用法详解

    Python的format格式化用法可以通过下面几种方式来实现: 1.使用{}作为占位符,通过索引来指定要替换的参数,如: # 替换第一个参数 "Hello {}, Welcome to P ...

  5. Python基础之格式化输出函数format()功能详解

    之前发过一篇文章:Python基础之常用格式化输出字符详解 但是呢,有时候我们需要用到多个%的时候,用这个就很不方便了,比如数错%数量或者一 一对应的时候... 这里补充一个字典方式的格式化输出字符的 ...

  6. Python基础之%格式化和format()格式化的用法

    Python基础之输出格式 文章目录 一. 数字格式化----% 二. 字符串格式化----format()方法 1.字符串format()方法的基本用法 2.字符串format()方法的格式控制 一 ...

  7. python字符串format格式化三

    python字符串format左中右对齐 print("第{ya:02.0f}章,寻找超越的方式".format(ya = 1)) .0f的意思是小数部分忽略 ya:02的功能是格 ...

  8. python 字符串format格式化一

    字符串的format方法(format格式化) 字符串格式化参数使用一对花括号{} 支持按顺序指定格式化参数值和关键字格式化 print("{} {} {}".format(1,2 ...

  9. python基础_格式化输出(%用法和format用法)

    %用法 1.整数的输出 %o -- oct 八进制 %d -- dec 十进制 %x -- hex 十六进制 >>> print('%o' % 20) 24 >>> ...

最新文章

  1. mysql插入的时候是否需要commit
  2. python应用:最长无重复字串提取
  3. 使用session监听+spring MVC拦截器禁止用户重复登录
  4. angular2安装笔记
  5. python建模仿真 matlab_清华大学出版社-图书详情-《仿真建模与MATLAB实用教程》
  6. 51单片机之工作周期与时序
  7. Java讲课笔记16:内部类
  8. php字符串里含有全角符号,php半角转全角字符函数
  9. FW:Data Mining UrlScan 3.0 Logs using LogParser 2.2
  10. 用C语言实现计算器功能
  11. EdrawMax Ultimate v12.0 图表和流程图
  12. CC2541蓝牙串口乱码解决
  13. 二、三角高程测量计算(C#语言)
  14. java运行环境安装及配置教程
  15. android smb windows,Android使用SMB协议共享电脑内文件方法
  16. deepnode软件下载地址_安卓苹果软件下载地址恢复
  17. mysql 8.0 新特性 统计直方图 优化执行计划SQL查询
  18. 【艺术评析】陈全胜先生山水画
  19. mysql分组取出每组地一条数据_MYSQL实现分组排序并取组内第一条数据
  20. 一、任务调度中心构建示例

热门文章

  1. html css调用自定义字体,css怎么自定义字体?
  2. Vue脚手架的安装(保姆级教程)
  3. 视频一键批量去重的方法与软件实现案例-咚咚剪辑
  4. android平板电脑开发_如何在Android手机或平板电脑上截图
  5. Android录音控件
  6. 在vue项目中 使用swiper轮播图的关于 在ios中图片白边闪屏踩坑记录
  7. 跑腿兔(TaskRabbit)是一个跑腿网站
  8. Hexo历险记之五幻丽插件
  9. android-studio.下载地址
  10. 集团货币金额与本位币金额不一致的原因及解决办法