简述Python字符串格式化:%和.format ?
参考答案:
在Python中,字符串格式化是一种常见的技术,用于将变量值插入到字符串模板中。Python提供了两种主要的字符串格式化方法:%
操作符和str.format()
方法。
- %操作符:
%
操作符是一个古老的字符串格式化方法,在Python 2.x版本中非常流行。它的基本语法如下:
formatted_string = "这是一个%s,它的值是%d。" % (variable1, variable2)
在这个例子中,%s
是一个占位符,表示一个字符串,%d
表示一个整数。%
操作符后面的括号中包含了要插入到占位符中的变量。
例如:
name = "苹果"
price = 10
formatted_string = "这是一个%s,它的价格是%d元。" % (name, price)
print(formatted_string) # 输出:这是一个苹果,它的价格是10元。
- str.format()方法:
str.format()
方法是Python 3.x中引入的一个更现代、更灵活的字符串格式化方法。它的基本语法如下:
formatted_string = "这是一个{},它的值是{}。".format(variable1, variable2)
在这个例子中,{}
是一个占位符,format()
方法中的参数将按照顺序替换这些占位符。
例如:
name = "苹果"
price = 10
formatted_string = "这是一个{},它的价格是{}元。".format(name, price)
print(formatted_string) # 输出:这是一个苹果,它的价格是10元。
str.format()`还支持更复杂的格式化选项,例如指定数字的精度、对齐方式等。
pi = 3.1415926
formatted_string = "π的值是:{:.2f}".format(pi)
print(formatted_string) # 输出:π的值是:3.14
在这个例子中,{:.2f}
表示将pi
变量格式化为保留两位小数的浮点数。
总的来说,%
操作符和str.format()
方法都是用于在Python中进行字符串格式化的有效手段。然而,由于str.format()
方法提供了更多的格式化选项和灵活性,它通常被认为是更现代和更推荐的方法。