Python - 使用 format() 方法进行字符串格式化



Python format() 方法

Python 3.0 在 str 类中引入了 format() 方法,以便更有效地处理复杂的字符串格式。此方法已向后移植到 Python 2.6 和 Python 2.7

这种内置字符串类的方法提供了执行复杂变量替换和值格式化的能力。这种新的格式设置技术被认为更优雅。

语法

format() 方法的一般语法如下 -


 str.format(var1, var2,...)

返回值

该方法返回一个格式化的字符串。

字符串本身包含占位符 {},其中连续插入变量的值。


name="Rajesh"
age=23
print ("my name is {} and my age is {} years".format(name, age))

它将产生以下输出 -

my name is Rajesh and my age is 23 years

使用 format() 方法进行字符串格式化

你可以使用变量作为 format() 方法的关键字参数,并使用变量名称作为字符串中的占位符。

print ("my name is {name} and my age is {age} years".format(name="Rajesh", age=23))

您还可以指定 C 样式格式符号。唯一的变化是使用 “:” 而不是 %。例如,使用 {:s} 代替 %s,使用 (:d} 代替 %d


name="Rajesh"
age=23
print ("my name is {:s} and my age is {:d} years".format(name, age))

使用 format() 方法进行精度格式化

可以相应地对数字进行精确格式化。


name="Rajesh"
age=23
percent=55.50
print ("my name is {:s}, age {:d} and I have scored {:6.3f} percent marks".format(name, age, percent))

它将产生以下输出 -

my name is Rajesh, age 23 and I have scored 55.500 percent marks

使用 format() 方法进行字符串对齐

字符串对齐是通过 <、> 和 ^ 符号(分别用于左、右和中心对齐)在占位符中完成的。默认值为左对齐。


name='QikepuCom'
print ('Welcome To {:>20} The largest Qikepu Library'.format(name))
print ('Welcome To {:<20} The largest Qikepu Library'.format(name))
print ('Welcome To {:^20} The largest Qikepu Library'.format(name))

它将产生以下输出 -

Welcome To QikepuCom The largest Qikepu Library
Welcome To QikepuCom The largest Qikepu Library
Welcome To QikepuCom The largest Qikepu Library

使用 format() 方法进行字符串截断

同样,要截断字符串,请在占位符中使用 “.” 。


name='QikepuCom'
print ('Welcome To {:.5} The largest Qikepu Library'.format(name))

它将产生以下输出 -

Welcome To Qikep The largest Qikepu Library