您的位置:

Python格式化字符串简明教程,让你轻松处理文本!

一、Python格式化字符串的基本用法

Python格式化字符串是一种快捷而简单的处理文本的方法,通过%s、%d等格式化符号,我们可以将变量插入到字符串中,同时也可以控制输出的格式。下面我们来看看Python格式化字符串的基本用法。

# 定义一个字符串
name = '小明'
age = 18
grade = 3.1415926

# 格式化字符串
result = '我的名字是%s,年龄是%d,成绩是%f' % (name, age, grade)

# 输出结果
print(result)

输出结果为:“我的名字是小明,年龄是18,成绩是3.141593”。

我们可以看到,Python格式化字符串使用“%”符号作为格式化标记,后面跟着一个或多个格式化说明符。其中%s代表字符串,%d代表整数,%f代表浮点数。

除了%s、%d、%f之外,Python还支持其他的格式化说明符,如下表所示:

%d 有符号十进制整数
%u 无符号十进制整数
%o 八进制整数
%x 十六进制整数(小写字母)
%X 十六进制整数(大写字母)
%e 科学计数法表示的浮点数(小写字母e)
%E 科学计数法表示的浮点数(大写字母E)
%f 浮点数
%g 根据大小自动选择%f或%e
%c 单个字符
%r 字符串,使用repr()函数将字符串转换为形如'Hello, World!'的字符串
%s 字符串,使用str()函数将字符串转换为形如'Hello, World!'的字符串

二、使用字典格式化字符串

除了上面介绍的多个变量和多个格式化符号的用法之外,我们还可以使用字典格式化字符串。字典格式化字符串是指将多个变量保存在一个字典中,然后通过字典键值对的方式进行格式化。

# 定义一个字典
student = {
    'name': '小明',
    'age': 18,
    'grade': 3.1415926
}

# 格式化字符串
result = '我的名字是%(name)s,年龄是%(age)d,成绩是%(grade)f' % student

# 输出结果
print(result)

输出结果为:“我的名字是小明,年龄是18,成绩是3.141593”。

我们可以看到,在字典格式化字符串中,使用“%(key)s”代表字符串,使用“%(key)d”代表整数,使用“%(key)f”代表浮点数。其中,key是字典键值对中的键,将被替换为字典中对应的值。

三、使用format函数格式化字符串

Python还支持使用format函数进行格式化字符串。format函数不仅仅可以对一个变量进行格式化,还可以对多个变量进行格式化,并且支持对字符串的左对齐、右对齐和居中等操作。

# 定义变量
name = '小明'
age = 18
grade = 3.1415926

# 格式化字符串
result = '我的名字是{},年龄是{},成绩是{:f}'.format(name, age, grade)

# 输出结果
print(result)

输出结果为:“我的名字是小明,年龄是18,成绩是3.141593”。

我们可以看到,使用format函数进行格式化字符串的方法更加简单,不需要像格式化字符串那样指定格式化符号。同时,我们还可以使用“{:10s}”这样的格式化字符,代表字符串的长度为10,可以右对齐输出。

四、使用f-string格式化字符串

Python 3.6以后支持使用f-string进行格式化字符串。f-string简单易懂,代码简洁,是Python格式化字符串的最佳选择。

# 定义变量
name = '小明'
age = 18
grade = 3.1415926

# 格式化字符串
result = f'我的名字是{name},年龄是{age},成绩是{grade:f}'

# 输出结果
print(result)

输出结果为:“我的名字是小明,年龄是18,成绩是3.141593”。

我们可以看到,在f-string中,使用“{}”代表变量,可以使用“{:f}”等格式化说明符。

五、Python格式化字符串的注意事项

在使用Python格式化字符串时,需要注意以下几点:

1、格式化字符串与转义字符的使用非常类似,要特别注意格式化字符串中的“%”符号不能随便使用,否则可能会导致错误。

2、格式化字符串不能与f-string等其他格式化字符串混用,否则可能会导致语法错误。

3、在使用f-string的时候,要注意使用Python 3.6及以上版本,否则会提示语法错误。

六、小结

Python格式化字符串是一种简单而实用的处理字符串的方法,可以帮助我们在代码中更方便地输出信息。在实际使用中,我们需要根据不同的情况灵活运用不同的格式化字符串方法,以便更好地管理和展示数据。