Python中的字符串格式化是一种用来格式化字符串输出的方法,常见的有“%”格式化和“format()”格式化方法,其中其中“format()”方法是比较推荐使用的,因为它在复杂的场景下比“%”格式化更加清晰易读。
format()格式化
format()方法使用一种简单的占位符,用大括号“{}”指定在哪里插入格式化的值。形式如下:
"Hello, {} and {}!".format(name1, name2)
其中,大括号内可以指定索引值或关键字参数的名称,表示在该位置上插入对应的参数,也可以用其他格式化选项将参数格式化为指定的样式。
插值语法
除了{},也可以使用冒号 : 来定义格式化选项。冒号后面可以跟一个格式化代码,这里有个例子:
print("Hello, my name is {:10}, nice to meet you!".format("June"))
这个格式化代码指定了字符串输出的最小宽度,长的字符串会被截断,但是短的字符串则会保持原样,输出时位于左侧。输出结果为:
Hello, my name is June , nice to meet you!
我们也可以通过这种方式来实现字符串对齐、数字的精度控制、日期和时间格式化等特定的需求。下面列举一个例子:
print("{:0>4d}-{:0>2d}-{:0>2d}".format(2021, 6, 21))
# 输出结果:2021-06-21
这个例子中用到了“{:0>4d}”、“{:0>2d}”,它们的意义分别是输出整型数值,最小宽度为4位时,左侧填充0,输出时同样位于左侧;输出整型数值,最小宽度为2位时,左侧填充0。
下面再提供一个格式化链接示例,这里我们用的是?和?当作变量,直接看代码即可理解:
print("I love to eat {1} but I don't like {0}."
"I will buy {1} from grocery store".format("carrot?", "banana?"))
输出结果如下:
I love to eat banana? but I don't like carrot?.I will buy banana? from grocery store
这个例子中,我们通过大括号的变量位置编号,将“carrot?”和“banana?”分别对应到了第一个和第二个大括号位置上,可以看到“banana?”被用在了两个位置上。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python format 格式化输出方法 - Python技术站