lists - Imprimir y unir declaración en python
replace python (3)
Soy novato de Python. Tengo una secuencia y puedo imprimirla usando el método de join
y puedo imprimir la longitud de la secuencia por separado. No puedo imprimir ambos juntos. Lo que hasta ahora soy:
>>> str = "-";
>>> seq = ("a", "b", "c");
>>> print str.join( seq );
a-b-c
>>> print len(seq)
3
Quiero imprimir tanto str.join(seq)
como len(seq)
juntos en una línea, con algunas lines
como esta (Mi resultado deseado):
The join output is: a-b-c The length is: 3
Todo esto en una línea. ¿Es posible en python
?
En primer lugar, no use str
como nombre de variable . Esto es un built-in; usarlo como un nombre de variable significa que no puede acceder a él (por ejemplo, para convertir otros elementos en cadenas).
En segundo lugar, recomendaría el formato de cadenas aquí:
print "The join output is: {0}. The length is: {1}.".format("-".join(seq),
len(seq))
Sí, en el segundo @jonrsharpe str está insertado y el uso no debería usar ese nombre.
print " The join o/p is %s and The length is %s"%(s.join(seq),len(s.join(seq)))
Aquí su longitud no es 3 será 5. Dado que ha agregado 2 ''-''. Si desea contar excluyendo ''-'', use la línea a continuación.
print " The join o/p is %s and The length is %s"%(s.join(seq),len(s.join(seq).replace(''-'','''')))
seq = (''a'', ''b'', ''c'')
joined = ''-''.join(seq)
print(''The join output is:'', joined, ''The length is:'', len(seq))
o
print(''The join output is: '' + joined + '' The length is: '' + str(len(seq)))