Título: Obtener valor numerico y posicion en una cadena de caracteres - python Publicado por: juanfelr en 27 Abril 2022, 03:56 am Saludos a todos los miembros del foro.
Procuraré explicar el código que tengo en mente de la manera mas clara posible con las siguientes instrucciones quedebe cumplir: 1. Debe solicitar al usuario ingresar texto que puede ser alfanumérico. 2. Para el texto ingresado por el usuario debe detectar la posición del primer número e indicar de que numero se trata. Por ejemplo, si el usuario ingresa el código ABC123, la posición es 3 (teniendo en cuenta que comienza en 0) y el número es 1. hasta el momento tengo el siguiente código y creo que estoy cerca, pero más abajo inidco el problema con la lógica. plate=input("Plate: ") for char in plate: i=0 for i in range(10): if char.find(f"{i}")!=-1: print(i) break El problema es que cuando termina el ciclo interno no se detiene y continúa con el siguiente caracter de la palabra ingresada, es decir, si ingreso AB45 me da como resultado: 4 5 en lugar de solo: 4 si adiciono un break por fuera del for interior, simplemente no muestra nada, y si adiciono print(i) por fuera de los ciclos me muestra solo el numero 9 (como si el ciclo hubiese continuado hasta el último valor de i) Alguien sabe si voy por buen camino o hay otra forma más sencilla de resolver este requisito? Mil gracias por su atención y feliz día. Título: Re: Obtener valor numerico y posicion en una cadena de caracteres - python Publicado por: juanfelr en 27 Abril 2022, 04:27 am Señores lo logré,
después de una semana pensando, y apenas unos minutos de haber publicado el post, se me ocurrió otra forma. lo comparto para quienes puedan tener la misma situación: plate=input("Plate: ") n=len(plate) for i in range(n): if plate.isnumeric()==True: break num=plate print(num) para mi sigue el trabajo porque esto es solo una parte de la tarea, seguiré pensando. Espero que esta solución sea de ayuda a muchas personas. Feliz día. Título: Re: Obtener valor numerico y posicion en una cadena de caracteres - python Publicado por: Xyzed en 27 Abril 2022, 05:26 am Señores lo logré, Hola.después de una semana pensando, y apenas unos minutos de haber publicado el post, se me ocurrió otra forma. lo comparto para quienes puedan tener la misma situación: plate=input("Plate: ") n=len(plate) for i in range(n): if plate.isnumeric()==True: break num=plate print(num) para mi sigue el trabajo porque esto es solo una parte de la tarea, seguiré pensando. Espero que esta solución sea de ayuda a muchas personas. Feliz día. Tu código no cumple con lo que redactas, te explico porque: Código
A continuación, te aporto la solución comentada. Código
Espero que te sirva. Te recomiendo leer más documentación, eso te facilitará el aprendizaje y harás código mucho más legible. Saludos. Título: Re: Obtener valor numerico y posicion en una cadena de caracteres - python Publicado por: juanfelr en 28 Abril 2022, 03:49 am Saludos XyZed.
De hecho me estaba funcionando parcialmente, solo que al publicar me omitió el símbolo "[ ]" y su contenido, pero tienes toda la razón, no estaba cumpliendo con el requisito. Código: plate=input("Plate: ") Muchas gracias por tu aporte, lo voy a ensayar para lograr el objetivo. Aún estoy comenzando y como dices tengo mucho por leer al respecto. Gracias por tu paciencia y feliz noche. |