欢迎访问宙启技术站
智能推送

format()函数格式化字符串?

发布时间:2023-05-21 01:22:50

format()函数是Python内置函数之一,它可以用于格式化字符串。使用format()函数可以方便地将各种数据类型(例如数值、字符串、列表等)插入到字符串中,生成符合要求的字符串输出。

format()的语法是:

str.format(arg1, arg2, ...) 

其中,str是要进行格式化的字符串,arg1、arg2……是要插入到字符串中的对象。

下面通过具体的例子来说明format()函数的用法:

1.基本的用法

例如,我们要打印两个数的和:

a, b = 1, 2

print('a+b=', a+b)

这个输出语句中,我们需要把a+b的结果插入到字符串中,使用format()函数可以这样实现:

a, b = 1, 2

print('a+b={}'.format(a+b))

这里的{}表示一个占位符,用来接收我们要插入的值,通过format()函数将a+b的结果传入{}。

2.使用位置参数

format()函数可以用位置参数的方式插入多个对象。例如,我们要输出两个人的姓名和年龄:

name1, age1 = "张三", 20

name2, age2 = "李四", 25

print("姓名:{},年龄:{} 

姓名:{},年龄:{}".format(name1, age1, name2, age2))

这里我们在字符串中使用两个占位符,分别用来输出两个人的姓名和年龄。format()函数的参数依次传入占位符中,它们的位置与占位符的位置对应。

3.使用关键字参数

除了位置参数,format()函数也可以使用关键字参数来插入对象。这样可以提高代码的可读性。例如:

print("{city1}人口{num1}万,{city2}人口{num2}万".format(city1="北京", num1=2153, city2="上海", num2=2424))

这里我们使用关键字参数的方式向字符串中插入了四个值。关键字参数的格式是:{key=value}。

4.使用下标

除了使用位置和关键字参数,format()函数还可以使用下标来引用后续参数。

例如,我们可以在字符串中使用特殊的语法{0}、{1}、{2}等来指代后续参数的位置,然后使用format()函数传入这些位置参数:

print("我爱{0},也爱{1}".format("编程", "学习"))

输出结果是:

我爱编程,也爱学习

5.格式化输出

format()函数除了插入不同类型的对象,还可以对其进行格式化。常用的格式化方式有:十进制、八进制、十六进制、浮点数等。

例如:

print("十进制:{0:d}; 八进制:{0:o}; 十六进制:{0:x}; 浮点数:{1:.2f}".format(10, 3.141592653589793))

结果是:

十进制:10; 八进制:12; 十六进制:a; 浮点数:3.14

这里的{0:d}表示输出第1个参数的十进制,{0:o}表示八进制,{0:x}表示十六进制。

另外,{1:.2f}表示输出第2个参数的浮点数,保留2位小数。

格式化字符串的常见符号:

b - 二进制

c - 字符

d - 十进制

o - 八进制

x - 十六进制 (小写a-f)

X - 十六进制 (大写A-F)

e - 科学计数法

E - 科学计数法 (大写E)

f - 浮点数

F - 浮点数 (与f相同)

g - 通用格式(浮点数小于区分许多其他数值类型)

G - 通用格式 (与g相同)

n - 数字符号化

% - 百分号格式化 (浮点数)

使用format_map()函数添加自定义字典

format_map()函数用于将自定义的字典插入到字符串,例如:

price = {"apple": 3.5, "orange": 4.5, "banana": 2.5}

print("苹果价格:{apple}元,橙子价格:{orange}元,香蕉价格:{banana}元".format_map(price))

结果是:

苹果价格:3.5元,橙子价格:4.5元,香蕉价格:2.5元

这里的format_map()函数接收一个字典,将字典的键值对解析成{key:value}的形式。注意,字典的键值对必须与字符串中相对应的占位符相同。

总结

format()函数是Python内置函数之一,可以用于字符串的格式化输出。

使用format()函数,可以灵活地插入各种类型的对象到字符串中。

format()函数支持位置参数、关键字参数、下标、以及格式化输出等多种方式,功能强大。

除了常规的插入对象和格式化输出,format_map()函数还可以将自定义字典插入到字符串,提高了程序的可扩展性和可读性。