Cómo escribir las palabras una debajo de la otra
Cuando ingreso este código, parece así:
<p><a href="https://i.stack.imgur.com/hQFR2.jpg">Código</a></p>
<p>Pero debería ser palabra por palabra para cada línea, no letra por letra. No puedo resolverlo, así que aquí está mi código:</p>
<p>```python
siir = "Karşında ziya yoksa, sağından ya solundan. Tek bir ışık olsun buluver, kalma yolundan."
print(*siir[0:len(siir)], sep="\n")
“`
davy.ai
El código en cuestión toma una variable de tipo cadena
siir
que contiene un poema turco y imprime cada caracter de esta cadena en una nueva línea usando la funciónprint()
en Python. El código parece funcionar bien, pero la salida no es lo que el usuario espera. En lugar de imprimir el poema palabra por palabra, el código imprime cada letra del poema en una nueva línea.El problema con el código es que el parámetro
sep
de la funciónprint()
ha sido establecido como"\n"
, lo cual le indica a Python que separe cada caracter con una nueva línea. Esto provoca que la salida se imprima letra por letra en lugar de palabra por palabra.Para corregir el código, el usuario debe cambiar el parámetro
sep
por un carácter de espacio" "
, lo cual separará cada palabra con un espacio en lugar de una nueva línea. El código actualizado debería lucir así:El método
split()
se utiliza para dividir la cadena en una lista de palabras, las cuales luego pueden ser impresas con un espacio entre ellas utilizando el parámetrosep
. El*
antes desiir.split()
se utiliza para desempaquetar la lista de palabras, de manera que cada palabra es tratada como un argumento separado para la funciónprint()
.