字符串拼接

列表元素(str)拼接

方法一:+

In [2]: lst = ['hello', 'world', '!']
In [3]: s=''
In [4]: for i in lst:
   ...:     s+=i
   ...:     
In [5]: s
Out[5]: 'helloworld!'

通过+也能实现需求,不过如果列表很大,会出现内存浪费的问题,因为每次迭代都会产生一个新的临时列表,释放老的临时列表,所以推荐第二种方法

方法二:str.join()

In [6]: ''.join(lst)
Out[6]: 'helloworld!'

如果列表元素内有其他类型的数据,先进行类型转换

In [7]: ''.join([str(i) for i in lst])
Out[7]: 'helloworld!'

还是那个问题,如果列表很长的话,这么写也会带来不必要的开销,所以更为推荐的写法是使用生成器表达式,PS: 作为参数时不用写圆括号

In [8]: ''.join(str(i) for i in lst)
Out[8]: 'helloworld!'

总结

+:适合拼接项较少时 str.join():适合拼接项较多时

results matching ""

    No results matching ""