in

¿Clase de cadena de Python como StringBuilder en C #?

apple touch icon@2

He utilizado el código de Oliver Crow (enlace proporcionado por Andrew Hare) y lo he adaptado un poco para adaptar Python 2.7.3. (usando el paquete timeit). Ejecuté en mi computadora personal, Lenovo T61, 6GB RAM, Debian GNU / Linux 6.0.6 (squeeze).

Aquí está el resultado de 10,000 iteraciones:

method1:  0.0538418292999 secs
process size 4800 kb
method2:  0.22602891922 secs
process size 4960 kb
method3:  0.0605459213257 secs
process size 4980 kb
method4:  0.0544030666351 secs
process size 5536 kb
method5:  0.0551080703735 secs
process size 5272 kb
method6:  0.0542731285095 secs
process size 5512 kb

y para 5,000,000 iteraciones (el método 2 fue ignorado porque corría demasiado lento, como para siempre):

method1:  5.88603997231 secs
process size 37976 kb
method3:  8.40748500824 secs
process size 38024 kb
method4:  7.96380496025 secs
process size 321968 kb
method5:  8.03666186333 secs
process size 71720 kb
method6:  6.68192911148 secs
process size 38240 kb

Es bastante obvio que los chicos de Python han hecho un gran trabajo para optimizar la concatenación de cadenas, y como dijo Hoare: «la optimización prematura es la raíz de todos los males» 🙂

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

sactter plot1

SAS: gráficos de dispersión

8m5Lhgaj4VnLfucaEQZwMR 1200 80

Transmisión en vivo de UFC Fight Night: Sandhagen vs Dillashaw hora de inicio, cartelera y más