欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Python字符串格式化及要点总结

程序员文章站 2022-03-08 15:11:45
Python字符串格式化1、经典字符串格式化符号——百分号(%)  待格式化字符串中的%s 部分称为转换说明符,表示该位置需要放置被格式化的对象,通用术语为占位符。>>> print('hi,%s' % 'python') hi,python >>> print('一年有%s个月' % 12) 一年有 12个月 >>> print('圆周率 PI的值为:%f' % 3.14) 圆周率 PI的值为:3.140000 2.元组的字符串格式...

Python字符串格式化

1.经典字符串格式化符号——百分号(%)

  待格式化字符串中的%s 部分称为转换说明符,表示该位置需要放置被格式化的对象,通用术语为占位符。

>>> print('hi,%s' % 'python') 
hi,python 
>>> print('一年有%s个月' % 12) 
一年有 12个月 
>>> print('圆周率 PI的值为:%f' % 3.14) 
圆周率 PI的值为:3.140000 

2.元组的字符串格式化

  格式化操作符的右操作数可以是任何元素,如果右操作数是元组,那元组中的每个元素都会被单独格式化,每个值都需要对应的一个占位符。例如:

>>> print('%s年的冬奥会将在%s举行,预测中国至少赢取%d枚金牌' % ('2022','北京',5)) 
2022年的冬奥会将在北京举行,预测中国至少赢取 5枚金牌 

3. format 字符串格式化

  从 Python 2.6 开始,引入了另外一种字符串格式化的方式,形式为 str.format()。str.format()是对百分号(%)格式化的改进。使用 str.format()时,替换字段部分使用花括号表示。

>>> 'hello,{}'.format('world') 
'hello,world' 
>>> print('圆周率 PI的值为:{0}'.format(3.141593)) 
圆周率 PI的值为:3.141593 
>>> print('圆周率 PI的值为:{0:.2f}'.format(3.141593)) 
圆周率 PI的值为:3.14 
>>> print('圆周率 PI的值为:{pi}'.format(pi=3.141593)) 
圆周率 PI的值为:3.141593 

4.字符串格式化的新方法

  从 Python 3.6 开始,引入了一种新的字符串格式化字符:f-strings,用于格式化字符串。

>>> f'hello,{world}' 
'hello,world' 
>>> f'{2*10}' 
'20' 
>>> year=2022 
>>> address='北京' 
>>> gold=5 
>>> f'{year}年的冬奥会将在{address}举行,预测中国至少赢取{gold}枚金牌' 
'2022年的冬奥会将在北京举行,预测中国至少赢取 5枚金牌' 

要点总结

  1. (%)字符:标记占位符开始。
  2. 最小字段宽度(可选):转换后的字符串至少应该具有该值指定的宽度。如果是*,宽度就会从元组中读出。
  3. 转换标志(可选):-表示对齐;+表示在转换值之前要加上正负号;“ ”(空白字符)表示正数之前保留空格;0 表示转换值位数不够时用 0 填充。
  4. 点(.)后跟精度值(可选):如果转换的是实数,精度值表示出现在小数点后的位数;如果转换的是字符串,该数字就表示最大宽度;如果是*,精度就会从元组中读出。
  • 简单字符串格式化
>>> print('圆周率 PI的值为:%.2f' % 3.14) 
圆周率 PI的值为:3.14 
>>> print('石油价格为每桶:$%d' % 96) 
石油价格为每桶:$96 
  • 格式化时指定字段宽度和精度
>>> print('圆周率 PI的值为:%10f' % 3.141593) #字段宽度为 10 
圆周率 PI的值为:3.141593 #字符串宽度为 10,被字符串占据 8个空格,剩余两个空格 
>>> print('保留 2位小数,圆周率 PI的值为:%10.2f' % 3.141593) #字段宽度为 10 
保留 2位小数,圆周率 PI的值为:3.14 #字符串宽度为 10,字符串占据 4个,剩 6个 
>>> print('保留 2位小数,圆周率 PI的值为:%.2f' % 3.141593) #输出,没有字段宽度
参数 
保留 2位小数,圆周率 PI的值为:3.14 
>>> print('字符串精度获取:%.5s' % ('hello world')) #打印字符串前 5个字符 
字符串精度获取:hello 
  • 符号、对齐和 0 填充
      在字段宽度和精度之前可以放置一个“标表”,可以是零、加号、减号或空格。零表示用 0 进行填充。减号(-)用来左对齐数值。
0填充:
>>> print ('圆周率 PI的值为:%010.2f' % 3.141593) 
圆周率 PI的值为:0000003.14 

减号(-) 左对齐:
>>> print('圆周率 PI的值为:%10.2f' % 3.14) 
圆周率 PI的值为: 3.14 
>>> print('圆周率 PI的值为:%‐10.2f' % 3.14) 
圆周率 PI的值为:3.14 #此处右侧为多出的空格
  • 格式化符号
    Python字符串格式化及要点总结

本文地址:https://blog.csdn.net/zjjlov/article/details/107875132