¿Hay alguna manera de agregar una cadena al final de otra en python? p.ej.creando una cadena de dos en python
Cadena1 = 'A' Cadena2 = 'B'
y quiero concatenación
¿Hay alguna manera de agregar una cadena al final de otra en python? p.ej.creando una cadena de dos en python
Cadena1 = 'A' Cadena2 = 'B'
y quiero concatenación
cadena STRING3 == 'AB' en Python es sencillo
a = "A"
b = "B"
c = a + b
print c
> AB
que la referencia de los tres operaciones , realizando 1m de cada uno:
c = a + b
c = '%s%s' % (a,b)
c = "{0}{1}".format(a, b)
Y el resultado s son:
+: 0.232225275772
%s: 0.42436670365
{}: 0.683854960343
Incluso con cadenas de 500 caracteres, + sigue siendo el más rápido con diferencia. Mis script is on ideone y los resultados (por 500 cadenas de carbón de leña) son:
+: 0.82
%s: 1.54
{}: 2.03
usted podría utilizar la versión más simple: String3 = String1 + String2
o el operador de formato (en desuso en python3): String3 = '%s%s' % (String1, String2)
En Python, los + concatena operador cadenas:
>>> String3 = String1 + String2
>>> String3
'AB'
Esta es la forma más sencilla y, por lo general, es la elección correcta. Sin embargo, a veces puede necesitar un más efficient string concatenation.
También puede probar str.join():
>>>s1='a'
>>>s2='b'
>>>s3=''.join((s1,s2))
>>>s3
'ab'
también si escribe:
>>>s3='WhatEver'.join((s1,s2))
>>>s3
'aWhatEverb'
Por simplicidad cuando la velocidad no importa, no se puede mejorar la facilidad de c=a+b
. Si la velocidad sí importa (porque está realizando una gran cantidad de concatenaciones sucesivas, por ejemplo), str.join()
can be a little more efficient (code at ideone).
+: 2.51
''.join([a,...z]): 0.2
append(): 2.05
De lo que puedo decir, si va a realizar concatenaciones sucesivas sin tocar el producto intermedio, estoy mejor añadiendo cada adición a una lista, a continuación, unirse a todo a la vez. Para el caso de concatenación única, a+b
es aún más rápido que a.join(b)
Y siempre pensé que la concatenación de cadenas con el signo + era lenta. Tal vez porque las cuerdas son demasiado cortas? –
Tal vez, he subido mi script a Ideone, donde los resultados son aún más pronunciados: http://ideone.com/a6JMi – fredley
No sabía que el método .format era más lento que el método% de formateo. Pensé que .format era el método preferido. ¿Siempre es más lento? – Curious2learn