文章目录

  • 前言
  • 一、为什么要格式化字符串
  • 二、%格式化字符串
  • 三、format()格式化字符串
  • 四、f-string格式化字符串
  • 五.%表示宽度和精度
  • 六.{}表示宽度和精度



前言

本文为自己自学内容的记录,其中多有借鉴别人博客的地方,一并在参考文献中给出链接。其中内容有理解不到位的地方,请各位大佬在评论区给出修改意见,感恩🌹


在Python中,格式化字符串是用来创建包含变量或表达式值的字符串的一种方式。它使得将数据动态地插入到字符串中变得简单,从而可以制作可读性强的消息或输出。常见的格式化方法包括使用百分号%、str.format()方法和f-string。例如,f-string使用花括号{}来包围变量或表达式,直接嵌入到字符串中,这样做可以提高代码的可读性和编写效率。

一、为什么要格式化字符串

python 修改字符串最后一位字符_格式化字符串

  1. 可读性和清晰性:格式化字符串可以帮助使输出更易于阅读和理解,特别是当信息需要以特定的格式显示时。
  2. 代码维护:使用格式化方法,如f-string或str.format(),可以在不改变整个字符串的情况下轻松地插入或修改变量,这使得代码更易于维护和更新。

二、%格式化字符串

python 修改字符串最后一位字符_python 修改字符串最后一位字符_02

name = “张三”
age = 24
message = "我叫%s,我今年%d岁"%(name,age)
print(message)
# 输出:我叫张三, 我今年25岁

三、format()格式化字符串

python 修改字符串最后一位字符_字符串_03

代码如下(示例1):使用名称占位符

message = "hello,my name is {name},I am {age} years old,and I like {hobby}".format(name = 'Tom', age = 25, hobby = 'reading')
print(message)
# 输出:hello,my name is Tom,I am 25 years old,and I like reading

代码如下(示例2):使用序号占位符

message = "hello,my name is {0},I am {1} years old,and I like {2}".format('Tom',25, 'reading')
print(message)

四、f-string格式化字符串

name = "Alice"
age = 14
message = f"hello,{name}.You are {age} years old."
print(message)
# 输出:hello,Alice.You are 14 years old.

五.%表示宽度和精度

print('%10d'%89) #10表示的是宽度
# 输出:        89(在89之前有8个空格)
-----------------------------------------------------------------------
print('%.3f'%3.1415926) #.3代表的是精度
# 输出:3.142
-----------------------------------------------------------------------
print('%10.3f'%3.1415926)
# 输出:     3.142

六.{}表示宽度和精度

print('{0:.3}'.format(3.1415926)) # 0表示占位符。.3表示一共三位数
#输出:3.14
---------------------------------------------------------------
print('{0:.3f}'.format(3.1415926)) #0表示占位符。.3f表示三位小数
#输出:3.142
----------------------------------------------------------------
print('{0:10.3f}'.format(3.1415926)) # .3f表示三位小数,10表示宽度是10
# 输出:     3.142