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

format来格式化字符串?

发布时间:2023-05-20 21:51:57

format是Python中常用的一个函数,在字符串的格式化输出中起到了至关重要的作用。它能够帮助我们在字符串中插入变量,从而让我们的输出更加灵活和美观。本文将详细介绍format函数的各种用法。

一、基本用法

format函数可以用来格式化任何类型的值,比如整数、浮点数、字符串等等。其基本语法如下:

str.format(args...)

其中,args是要插入到字符串中的参数,可以是单个值,也可以是多个值(以逗号分隔)。

例如:

>>> "My name is {}.".format("John")

'My name is John.'

这个例子中,花括号{}表示一个占位符,我们用.format方法将参数John传递进去,然后就得到了一个新的字符串。

二、指定位置和顺序

在使用format函数时,我们还可以通过位置和顺序来指定要插入的参数。这可以通过在占位符中添加数字来实现。例如:

>>> "My name is {0}, and I am {1} years old.".format("John", 30)

'My name is John, and I am 30 years old.'

可以看到,数字0和数字1分别代表了 个参数和第二个参数。我们也可以通过命名变量来指定参数:

>>> "My name is {name}, and I am {age} years old.".format(name="John", age=30)

'My name is John, and I am 30 years old.'

在这个例子中,我们使用了命名变量name和age来指定参数,从而让代码更加易读易懂。

三、指定输出格式

在使用format函数时,我们还可以指定输出格式,以达到更好的输出效果。例如:

>>> "Pi is approximately {0:.2f}.".format(3.1415926)

'Pi is approximately 3.14.'

这个例子中,我们使用了格式化字符串{0:.2f},其中0表示 个参数,.2f表示保留两位小数的浮点数。因此,最终输出的字符串为“Pi is approximately 3.14.”。

除了浮点数之外,我们还可以指定整数、字符串等类型的输出格式。例如:

>>> "I have {0:03d} apples.".format(7)

'I have 007 apples.'

在这个例子中,我们使用了格式化字符串{0:03d},其中0表示 个参数,03表示总共要输出3位数字,不足的部分用0填充,d表示输出的是整数类型。因此,最终输出的字符串为“I have 007 apples.”。

四、指定换行和制表符

在使用format函数时,我们还可以指定换行和制表符,从而让输出的字符串更加美观。例如:

>>> print("Name\tAge

John\t30")

Name    Age

John    30

在这个例子中,我们在字符串中使用了制表符(\t)和换行符(

),从而将输出的字符串分成了两列表格。

如果我们要在多行字符串中使用format函数,我们可以使用三个引号来创建多行字符串。例如:

>>> text = """

... Name\tAge

... John\t30

... """.strip()

>>> print(text.format())

Name    Age

John    30

在这个例子中,我们首先定义了一个多行字符串text,使用.strip()函数将它的前后空格去掉,然后使用.format函数将字符串中的占位符全部替换掉。

五、使用字典或列表作为参数

在使用format函数时,我们还可以使用字典或列表来指定占位符的具体值。例如:

>>> d = {'name': 'John', 'age': 30}

>>> "My name is {name}, and I am {age} years old.".format(**d)

'My name is John, and I am 30 years old.'

在这个例子中,我们定义了一个字典d,其中包含了两个键值对。我们使用两个花括号来表示占位符,然后在.format函数中使用**d来将字典d的值传递进去。

如果我们要使用列表作为参数,可以使用*args的方式传递。例如:

>>> l = ['John', 30]

>>> "My name is {}, and I am {} years old.".format(*l)

'My name is John, and I am 30 years old.'

六、连接字符串

在使用format函数时,我们还可以使用连接符将多个字符串连接起来。例如:

>>> " | ".join(["apple", "banana", "orange"])

'apple | banana | orange'

在这个例子中,我们使用了.join()函数来将一个数组中的多个字符串连接起来,用竖线“|”隔开。

如果我们要使用format函数连接字符串,可以使用连接符+来实现。例如:

>>> "My name is " + "John" + ", and I am " + str(30) + " years old."

'My name is John, and I am 30 years old.'

在这个例子中,我们使用+号将多个字符串连接起来。

七、总结

format函数是Python中常用的一个函数,它可以帮助我们格式化字符串输出。在使用该函数时,我们可以通过指定顺序、输出格式、换行制表符、字典或列表、连接符等方式来达到我们想要的输出效果。使用format函数,我们可以编写出更加灵活和美观的Python代码。