可以合理地假设此示例不是不好的做法,因为:
- 作者没有给出任何理由。也许只是他/她不喜欢它。
- Python文档没有提到这是不好的做法(从我所看到的情况)。
foo += 'ooo'
(据我了解)具有可读性,比快大约100倍foo = ''.join([foo, 'ooo'])
。
字符串串联的缺点是需要创建一个新的字符串并 为每个串联
分配新的内存!这很耗时,但是用很少和很小的字符串就没什么大不了的。当您知道要串联的字符串的数量并且不需要超过2-4个串联时,我会去做。
当加入字符串时,Python只需为最终的字符串分配新的内存,这将效率更高,但计算时间可能更长。另外,由于字符串是不可变的,因此使用字符串列表进行动态变异通常更实用,并且仅在需要时才将其转换为字符串。
使用str.join()创建字符串通常很方便,因为它需要迭代。例如:
总结一下letters = ", ".join("abcdefghij")
在大多数情况下,使用它更有意义,
str.join()但是有时级联同样可行。我个人认为,对大型或许多字符串使用任何形式的字符串连接都是不好的做法,就像
str.join()对短而又很少的字符串使用不好的做法一样。
我相信作者只是试图建立一个经验法则,以便更容易地确定何时使用哪些内容,而不必过多地详述或使其变得复杂。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)