将一些小的字符串合并成一个大的字符串,有两总方法:
1、“+”
很简单的方法,例如:
l = ['a', 'b', 'c', 'd', 'e']
s = ''
for x in l:
s += x
print(s)
得到结果:
'abcde'
但是采用这种方法,如果列表长度很大的话,会占用而外的内存,每一次循环都会得到新的s:
a
ab
abc
abcd
abcde
2、采用‘join’方法:
l = ['a', 'b', 'c', 'd', 'e']
''.join(l)
print(l)
得到:
'abcde'
当然,如果列表中即存在字符串,又存在数字,此时需要对其进行转化,将数字转换成字符串,可以采用列表解析的方式对列表中的每一个元素进行转换:
l = ['a', 1, 2, 3, 'e']
''.join([str(x) for x in l])
print(l)
当然,采用列表解析同样会首先得到一个新的列表,占用额外的内存,可以采用生成器,将列表解析的[]
改成()
即可:
l = ['a', 1, 2, 3, 'e']
''.join(str(x) for x in l)
print(l)
得到同样的结果:
'a123e'