Я провел несколько проверок производительности, чтобы увидеть, как разные методы конкурируют друг с другом.
import time
def forLoop(s):
start = time.time()
z = ""
for i in range(ITERS):
z += s
return time.time()-start
def listJoin(s):
start = time.time()
"".join([s]*ITERS)
return time.time()-start
def strMultiply(s):
start = time.time()
s*ITERS
return time.time()-start
ITERS = 10000
my_string = "I am good."
a, b, c = 0, 0, 0
for i in range(ITERS):
a += forLoop(my_string)
b += listJoin(my_string)
c += strMultiply(my_string)
print("For loop:", a)
print("List join:", b)
print("String multiplication:", c)
Вывод:
For loop: 5.720043182373047
List join: 0.8931441307067871
String multiplication: 0.025591611862182617