字符串是Pyhon中的常用的数据类型,这篇文章主要为大家详细介绍一下python字符串的格式化教程。
在Python 3.6之前,有两种将Python表达式嵌入到字符串文本中进行格式化的主要方法:%-formatting和str.format()
一、%-formatting
1 2 3 |
|
注:这种格式不是很好,因为它是冗长的,会导致错误。
二、str.format()
str.format() 在Python 2.6中引入的。
(1)使用str.format(),替换字段用大括号标记:
1 |
|
# 输出结果:'Hello, Eric. You are 74.'
(2)可以通过引用其索引来以任何顺序引用变量:
1 |
|
# 输出结果:'Hello, Eric. You are 74-74.'
(3)如果插入变量名称,则会获得额外的能够传递对象的权限,然后在大括号之间引用参数和方法:
1 2 |
|
# 输出结果:'Hello, Eric. You are 74.'
(4)可以使用**来用字典来完成这个巧妙的技巧:
1 2 |
|
# 输出结果:'Hello, Eric. You are 74.'
注:当处理多个参数和更长的字符串时,str.format()仍然可能非常冗长。
三、f-Strings
f-Strings是在Python 3.6开始加入标准库。也称为“格式化字符串文字”,F字符串是开头有一个f的字符串文字,以及包含表达式的大括号将被其值替换。
(1)f-Strings
1 2 3 |
|
# 输出结果:'Hello, Eric. You are 74.'
(2)用大写字母F也是有效的:
1 2 3 |
|
# 输出结果:'Hello, Eric. You are 74.'
(3)可以调用函数
1 2 3 |
|
# 输出结果:'eric is funny.'
1 |
|
# 输出结果:'74'
(4)可以使用带有f字符串的类创建对象
1 2 3 4 5 6 7 8 9 10 11 |
|
# 输出结果;'Eric Idle is 74.'
1 |
|
# 输出结果:'Eric Idle is 74. Surprise!'
(5)多行f-string
1 2 3 |
|
# 输出结果:'Hi Eric. You are a comedian. You were in Monty Python.'
1 2 3 |
|
# 输出结果:'Hi Eric. You are a {profession}. You were in {affiliation}.'
(6)使用"“”
1 2 3 4 5 |
|
# 输出结果:'\n Hi Eric. \n You are a comedian. \n You were in Monty Python.\n '
(7)性能
f字符串中的f也可以代表“速度快”。f-字符串是运行时渲染的表达式,而不是常量值。
速度比较:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
|
(8)语法正确格式
1 |
|
# 输出结果:'Eric Idle'
1 |
|
# 输出结果:'Eric Idle'
1 |
|
# 输出结果:'Eric Idle'
1 |
|
# 输出结果:'Eric Idle'
1 |
|
# 输出结果:'The "comedian" is Eric, aged 74.'
(9)字典
字典的键使用单引号,请记住确保对包含键的f字符串使用双引号。
1 2 |
|
# 输出结果:'The comedian is Eric Idle, aged 74.'
(10)大括号
为了使字符串出现大括号,您必须使用双大括号:
1 |
|
# 输出结果:'{74}'
1 |
|
# 输出结果:'{{74}}'
到此这篇关于Python字符串格式化实例讲解的文章就介绍到这了,希望可以帮到你。