Python字符串格式化方法:Str.format()详解(Python Str.format() 方法详解:字符串格式化的高效技巧)

原创
ithorizon 6个月前 (10-20) 阅读数 24 #后端开发

Python Str.format() 方法详解:字符串格式化的高效技巧

一、引言

在Python中,字符串格式化是一项常用的操作,它允许我们以指定的格式将变量或值嵌入到字符串中。Python提供了多种字符串格式化的方法,其中 str.format() 是最灵活且功能强盛的一种。本文将详细介绍 str.format() 方法的使用,帮助读者掌握这一高效技巧。

二、基本用法

str.format() 方法的基本用法如下:

"{[格式化字符串]}".format([参数1], [参数2], ...)

其中,格式化字符串中包含一个或多个占位符,用于指定参数的插入位置和格式。占位符可以是位置参数、关键字参数或对象属性。

三、占位符

str.format() 方法赞成以下几种占位符:

  • {}:位置参数占位符,按顺序传入参数。
  • {{}}:用于转义大括号,输出字面意义上的大括号。
  • {参数名}:关键字参数占位符,按参数名传入。
  • {属性名}:对象属性占位符,传入对象时使用。

四、格式化选项

在占位符中,我们可以添加一些格式化选项来控制参数的显示格式。格式化选项包括以下几部分:

  • 填充:在参数前或后填充字符。
  • 对齐:左对齐(<)、右对齐(>)、居中对齐(=)。
  • 宽度:参数显示的宽度。
  • , :千位分隔符。
  • 分隔符,用于分隔格式化选项和转换类型。
  • 转换类型:包括 sra 等,用于指定参数的转换类型。

五、示例

以下是一些使用 str.format() 方法的示例:

# 基本用法

name = "张三"

age = 30

print("我的名字是{},今年{}岁。".format(name, age))

# 使用位置参数

print("我的名字是{0},今年{1}岁。".format(name, age))

# 使用关键字参数

print("我的名字是{name},今年{age}岁。".format(name="张三", age=30))

# 使用对象属性

class Person:

def __init__(self, name, age):

self.name = name

self.age = age

p = Person("张三", 30)

print("我的名字是{0.name},今年{0.age}岁。".format(p))

# 使用填充、对齐和宽度

print("姓名:{:<10},年龄:{:>5}".format("张三", 30))

# 使用千位分隔符

num = 123456789

print("数字:{:,}".format(num))

# 使用转换类型

print("字符串:{!s},整数:{!r}".format("Hello", 123))

六、进阶用法

str.format() 方法还赞成一些高级用法,如嵌套格式化、格式化复数、格式化日期等。

# 嵌套格式化

print("姓名:{},分数:{:.2f},等级:{}".format("张三", 92.5, "{:.1f}".format(92.5)))

# 格式化复数

c = complex(3, 4)

print("实部:{0.real:.2f},虚部:{0.imag:.2f}".format(c))

# 格式化日期

from datetime import datetime

now = datetime.now()

print("当前时间:{},格式化时间:{}".format(now, "{:%Y-%m-%d %H:%M:%S}".format(now)))

七、总结

str.format() 方法是Python中一种强盛的字符串格式化方法,它提供了丰盈的格式化选项和占位符,可以满足不同场景下的格式化需求。通过掌握 str.format() 方法,我们可以更加高效地进行字符串操作,尽或许缩减损耗代码的可读性和可维护性。


本文由IT视界版权所有,禁止未经同意的情况下转发

文章标签: 后端开发


热门