字符串格式化方法调用——为什么是格式化方法?
现在我已经花了这么大的力气来比较和对比这两种格式化技术,我希望再解释下你有时仍可能想考虑使用 format
方法变体的原因。简言之,虽然格式化方法有时需要更多代码,但它还:
- 拥有几个在
%
表达式中未发现的额外特性(虽然%
可以使用可选方法) - 拥有更灵活的值引用语法(虽然它可能多此一举,而且
%
常有等价语法) - 可以让替代值引用更明确(虽然这现在是可选的)
- 将操作符换为更容易记住的方法名称(虽然这也更啰嗦)
- 不允许单个和多个值的不同语法(虽然实操显示这无关紧要)
- 作为一个函数可以被用在表达式不能被用在的地方(虽然单行函数让这个有了争议)
今天虽然这两种技术都可用,而且格式化表达式仍然广泛使用,但format
方法可能最终越来越受欢迎,在未来可能更受Python开发者关注。而且,语言中的表达式和方法,都可能出现在将碰到的代码中,因此你应该将两个都学会。但因为在新代码中,当前的选择仍是你们做出,所以让我们在结束这个话题前,简要地详述一下这些妥协。