Autor Tema: abecedario en python

0 Usuarios y 1 Visitante están viendo este tema.

20 Noviembre, 2020, 07:30 pm
Leído 183 veces

Quema

  • $$\Large \color{red}\pi\,\pi\,\pi\,\pi\,\pi\,\pi$$
  • Mensajes: 1,722
  • País: uy
  • Karma: +0/-0
  • Sexo: Masculino
i) Si tuviera que hacer la lista del abecedario (el inglés) en Python. No se cómo es que podés sumarle una posición a una letra. Si pongo char+1 me da error.

Por ejemplo digo
letra='a'
abc=[]
for i in letra:
abc.append(i+1)

y obviamente me da error.


ii) Luego si dado una palabra escribir otra palabra con la siguiente letra del abecedario de cada posición. Es decir, si se pone 'ab' que salga 'bc'.


20 Noviembre, 2020, 07:51 pm
Respuesta #1

ingmarov

  • Moderador Global
  • Mensajes: 4,900
  • País: hn
  • Karma: +0/-0
  • Sexo: Masculino
Hola

i) Si tuviera que hacer la lista del abecedario (el inglés) en Python. No se cómo es que podés sumarle una posición a una letra. Si pongo char+1 me da error.

Por ejemplo digo
letra='a'
abc=[]
for i in letra:
abc.append(i+1)  # Estás sumando a i (string) 1 (int), no lo puedes hacer

y obviamente me da error.


ii) Luego si dado una palabra escribir otra palabra con la siguiente letra del abecedario de cada posición. Es decir, si se pone 'ab' que salga 'bc'.

Corre este código, pon atención a la función chr(), con eso podrás terminar.

for i in range(130):
   print(i,chr(i))


Quizás te puede servir también la función ord()

Prueba  correr la linea  print(chr(ord("b")+1))


Saludos
No te confíes, revisa lo que escribo. Yo también me equivoco.
Odio el autocorrector de Android...

20 Noviembre, 2020, 08:47 pm
Respuesta #2

mathtruco

  • Moderador Global
  • Mensajes: 4,995
  • País: cl
  • Karma: +0/-0
  • Sexo: Masculino
  • El gran profesor inspira
Complemento la respuesta de ingmarov con lo siguiente: cada letra del alfabeto tiene su código ascii asociado, que es un número entero correlativo desde la a a la z.

20 Noviembre, 2020, 09:16 pm
Respuesta #3

feriva

  • $$\Large \color{red}\pi\,\pi\,\pi\,\pi\,\pi\,\pi\,\pi$$
  • Mensajes: 9,172
  • País: es
  • Karma: +1/-0
  • Sexo: Masculino
i) Si tuviera que hacer la lista del abecedario (el inglés) en Python. No se cómo es que podés sumarle una posición a una letra. Si pongo char+1 me da error.

Por ejemplo digo
letra='a'
abc=[]
for i in letra:
abc.append(i+1)



Tienes que usar format, si no, te sale en cuadraditos chinos el chr (a mí por lo menos me sale así).

Código: [Seleccionar]
for i in range (65,91):
print (format (chr(i)))

Si lo quieres en minúsculas buscas a ver qué números son en vez de ésos.

Saludos.

20 Noviembre, 2020, 11:01 pm
Respuesta #4

feriva

  • $$\Large \color{red}\pi\,\pi\,\pi\,\pi\,\pi\,\pi\,\pi$$
  • Mensajes: 9,172
  • País: es
  • Karma: +1/-0
  • Sexo: Masculino

ii) Luego si dado una palabra escribir otra palabra con la siguiente letra del abecedario de cada posición. Es decir, si se pone 'ab' que salga 'bc'.

No había visto esta pregunta.
Lo puedes hacer así

Código: [Seleccionar]
palabra1 = "abcdef"
palabra2 =""
for i in (palabra1):
numero_letra_siguiente = ord (i) + 1
palabra2 = palabra2 + format ( chr(numero_letra_siguiente) )
print ("palabra1 =", palabra1)
print ("palabra2 =", palabra2)

Saludos.