阅读(705) (27)

python文本 拼接或合并字符串

2016-11-16 16:34:02 更新

python文本 拼接、合并字符串

场景:

拼接、合并字符串

在这个场景中,我们首先想到的当然是使用 + 或者 += 将两个字符串连接起来

  >>> a='a'  
  >>> b='b'  
  >>> c=a+b  
  >>> c  
  'ab'  
  >>>   

如果整个程序只有两个字符串需要拼接,那没有问题

但是如果程序里面大量存在拼接,甚至需要循环拼接,这个时候性能问题就会出现

原因:字符串是不可原地修改的,改变一个字符串就是创建一个新的字符串替代旧的,如果当有 N 个字符串需要改动,那么就是创建 N 个字符串,然后再丢掉 N 个旧的字符串,分配一个大字符串空间并且填充这个字符串所需的时间大致正比于这个字符串的长度

因此,我们推荐使用 .join 方法,如果是有些字符串不是一开始就到位,可以使用 list 暂存,然后再 join

例如:


  >>> a='a'  
  >>> b='b'  
  >>> c=a.join (b)  
  >>> c  
  'b'  
  >>>