如何将字符列表最佳地连接到字符串?

rda*_*mon 3 python string

数据:

list = ['a','b','x','d','s']
Run Code Online (Sandbox Code Playgroud)

我想创建一个字符串str ="abxds".我怎样才能做到这一点?

现在我做的事情如下:

str = ""
for i in list:
    str = str + i
print(str)
Run Code Online (Sandbox Code Playgroud)

我知道字符串在Python中是不可变的,这将创建7个字符串对象.当我做了好几千次之后,这就失去了我的记忆.

有更有效的方法吗?

ken*_*ytm 12

>>> theListOfChars = ['a', 'b', 'x', 'd', 's']
>>> ''.join(theListOfChars)
'abxds'
Run Code Online (Sandbox Code Playgroud)

顺便说一句,不要使用liststr作为变量名,因为它们已经是内置函数的名称.

(另外,char在Python中没有."字符"只是一个长度为1的字符串.因此该''.join方法也适用于字符串列表.)

  • 你应该做的是使用`.join()`.然后,如果您的代码仍然不够快,请对其进行分析.如果`.join()`证明是瓶颈,那么*考虑编写一个C模块来替换它.如果你可以假设列表的内容是单个ASCII字符,那么AC版本确实可以比`.join()`快得多. (2认同)