有什么理由不使用'+'连接两个字符串吗?
Python中常见的反模式是+
在循环中使用串联字符串序列。这很不好,因为Python解释器必须为每次迭代创建一个新的字符串对象,并且最终要花费二次时间。(在某些情况下,最新版本的CPython显然可以优化此功能,而其他实现则不能,因此建议程序员不要依赖此功能。)''.join
是执行此操作的正确方法。
但是,我听说它说过),您 _永远都不_要将它+
用于字符串连接,而应该始终使用''.join
或格式字符串。我不明白为什么只连接两个字符串会出现这种情况。如果我的理解是正确的,则不应该花费二次时间,而且我认为a
+ b
比''.join((a, b))
或更加简洁易读'%s%s' % (a, b)
。
+
串联两个字符串是否是一种好习惯?还是有我不知道的问题?