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



Python format() 方法

Python 3.0 引入了 format() 方法到 str 类中,用于更有效地处理复杂的 字符串 格式化。此方法后来被移植到 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='TutorialsPoint'
print ('Welcome To {:>20} The largest Tutorials Library'.format(name))
print ('Welcome To {:<20} The largest Tutorials Library'.format(name))
print ('Welcome To {:^20} The largest Tutorials Library'.format(name))

它将产生以下 输出

Welcome To TutorialsPoint The largest Tutorials Library
Welcome To TutorialsPoint The largest Tutorials Library
Welcome To TutorialsPoint The largest Tutorials Library

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

类似地,要截断字符串,请在占位符中使用 "."。

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

它将产生以下 输出

Welcome To Tutor The largest Tutorials Library
python_string_formatting.htm
广告