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

Python函数format()用法:格式化字符串?

发布时间:2023-07-05 22:40:39

Python中的format()函数是用于格式化字符串的函数。它通过使用一对花括号({})作为占位符来指示需要被替换的部分,并使用format()函数中的参数来填充这些占位符。format()函数可以在很多方面帮助我们格式化字符串,下面将详细介绍其用法。

1. 基本用法

在最基本的用法中,我们可以使用format()函数来替换字符串中的占位符。例如,我们有一个字符串"Hello, {}!",我们可以使用format()函数将占位符替换为指定的内容。

示例代码:

name = "Alice"
greeting = "Hello, {}!".format(name)
print(greeting)

输出结果:

Hello, Alice!

在这个例子中,{}是占位符,format(name)将参数name的值替换到字符串中的占位符处。

2. 位置参数

我们可以在format()函数中指定位置参数,以指定要替换的占位符的位置。通过顺序指定要替换的参数,我们可以确保将参数替换到正确的位置。

示例代码:

name = "Alice"
age = 25
greeting = "Hello, {0}! You are {1} years old.".format(name, age)
print(greeting)

输出结果:

Hello, Alice! You are 25 years old.

在这个例子中,{0}表示第一个参数name,{1}表示第二个参数age。format(name, age)将这两个参数分别替换到对应的占位符中。

3. 关键字参数

除了位置参数外,我们还可以使用关键字参数来指定要替换的占位符。这种方式可以让代码更加清晰易读,因为参数的名称可以直接指示其含义。

示例代码:

name = "Alice"
age = 25
greeting = "Hello, {name}! You are {age} years old.".format(name=name, age=age)
print(greeting)

输出结果:

Hello, Alice! You are 25 years old.

在这个例子中,{name}和{age}分别表示参数name和age,format(name=name, age=age)将这两个参数替换到对应的占位符中。

4. 格式化数字

format()函数还可以用于格式化数字,可以指定数字的格式,比如指定小数位数、千位分隔符等。

示例代码:

num = 123456.789
formatted_num = "{:,.2f}".format(num)
print(formatted_num)

输出结果:

123,456.79

在这个例子中,"{:,.2f}"表示格式化为带有千位分隔符和2位小数的浮点数格式。format(num)将num的值替换到占位符中,并按照指定的格式输出。

5. 对齐和填充

format()函数还可以用于控制字符串的对齐和填充。可以指定字符串的宽度、对齐方式和填充字符。

示例代码:

name = "Alice"
formatted_name = "{:<10}".format(name)
print(formatted_name)

输出结果:

Alice     

在这个例子中,"{:<10}"表示将字符串左对齐,并且总宽度为10,不足10的部分用空格填充。format(name)将name的值替换到占位符中,并按照指定的格式输出。

6. 格式化日期和时间

format()函数还可以用于格式化日期和时间。

示例代码:

import datetime
now = datetime.datetime.now()
formatted_date = "{:%Y-%m-%d %H:%M:%S}".format(now)
print(formatted_date)

输出结果:

2022-01-01 12:34:56

在这个例子中,"{:%Y-%m-%d %H:%M:%S}"表示格式化为年-月-日 时:分:秒的格式。format(now)将当前日期和时间替换到占位符中,并按照指定的格式输出。

以上是format()函数的一些常见用法,通过使用format()函数,我们可以方便地对字符串进行格式化,使其更符合我们的需求。