Python中的format函数用于格式化字符串。它可以将变量、表达式或指定的值插入到字符串中的占位符位置。
具体来说,format函数可以完成以下几个功能:
字符串插值:通过将变量或表达式放置在大括号{}中,在字符串中插入相应的值。格式化数字:可以将数字格式化为特定的样式,如浮点数的小数位数、千位分隔符等。对齐文本:可以将字符串靠左、靠右或居中对齐。格式化日期和时间:可以将日期和时间格式化为特定的样式。格式化对象:可以通过自定义类的__format__方法,定义对象的格式化方式。例如,以下是一些使用format函数的示例:
# 字符串插值name = "Alice"age = 25print("My name is {} and I'm {} years old.".format(name, age))# 格式化数字num = 12345.6789print("The formatted number is: {:.2f}".format(num))# 对齐文本text = "Hello"print("{:<10}".format(text)) # 左对齐print("{:>10}".format(text)) # 右对齐print("{:^10}".format(text)) # 居中对齐# 格式化日期和时间import datetimenow = datetime.datetime.now()print("Today is: {:%Y-%m-%d}".format(now))# 格式化对象class Person: def __init__(self, name, age): self.name = name self.age = age def __format__(self, format_spec): if format_spec == "summary": return "{} is {} years old.".format(self.name, self.age) else: return str(self) def __str__(self): return self.nameperson = Person("Bob", 30)print("Person: {:summary}".format(person))输出结果:
My name is Alice and I'm 25 years old.The formatted number is: 12345.68Hello Hello Hello Today is: 2022-01-01Person: Bob is 30 years old.总之,format函数是一个非常灵活和强大的字符串格式化工具,在Python中广泛应用于字符串处理、日志记录、文本报告等场景。