elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Arreglado, de nuevo, el registro del warzone (wargame) de EHN


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  [Python3] Ayuda contar numeros en string
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [Python3] Ayuda contar numeros en string  (Leído 3,253 veces)
reconFito

Desconectado Desconectado

Mensajes: 29


Ver Perfil
[Python3] Ayuda contar numeros en string
« en: 29 Diciembre 2019, 18:04 pm »

Hola buenas a todos, molestaba a ver si me dan alguna de idea de como solucionar este ejercicio

Debo de diseñar un programa que cuente la cantidad de numeros en una cadena, lo que he podido realizar hasta ahora es simplemente contar  la cantidad de digitos que aparecen sin importar la cifra.

Ejemplo
'un 1 dos 201 tres 3', con el codigo que realice me cuenta cinco digitos y no deberian de ser cinco sino 3.
No se si me explico
Gracias de antemano por su atención

Código
  1. #Ejercicio#165 Contar cantidad de números en una cadena
  2.   string = input("Digita una cadena: ")
  3.   numbers = 0
  4.   for i in range(0,len(string)):
  5.       if string[i].isnumeric():
  6.           numbers+=1
  7.    print("Cantidad de números encontrados => ",numbers)
  8.  

MOD: Titulo modificado (mas descriptivo)


« Última modificación: 29 Diciembre 2019, 18:57 pm por MCKSys Argentina » En línea

MCKSys Argentina
Moderador Global
***
Desconectado Desconectado

Mensajes: 5.470


Diviértete crackeando, que para eso estamos!


Ver Perfil
Re: [Python3] Ayuda contar numeros en string
« Respuesta #1 en: 29 Diciembre 2019, 19:05 pm »

Hola!

La cadena siempre tendrá el formato que has colocado? Osea, cada "item" estará separado por espacios? Si es así puedes usar str.split. Luego recorres cada item de la lista 1x1 y cuentas los numeros (str.isnumeric == True)

Ahora, si los items no está separados siempre por espacio, se me ocurre que podrías ir char x char (como haces ahora), pero si isnumeric te da True, entonces empiezas a "armar" un numero. Mientras la función siga siendo True, sigues "creando" el número. Y cuando la función dé False, entonces terminas el ciclo de "creación" del numero (cuentas/muestras el numero creado y reseteas todo para poder hacer la "creación" nuevamente, en caso de que haya más numeros de varios chars).

Saludos!


En línea

MCKSys Argentina

"Si piensas que algo está bien sólo porque todo el mundo lo cree, no estás pensando."

reconFito

Desconectado Desconectado

Mensajes: 29


Ver Perfil
Re: [Python3] Ayuda contar numeros en string
« Respuesta #2 en: 29 Diciembre 2019, 20:11 pm »

Hola gracias por responder, en teoría la cadena siempre estará compuesta por espacios  y referente a lo de utilizar la función split y luego recorrer la lista que me genera me parece buena idea, pero la verdad estoy retomando el aprender python y  no quiero saltarme a utilizar cosas que aún no he visto, en el PDF, no sabras otra manera de hacerlo sin utilizar listas o funciones avanzadas.

Gracias de nuevo por responderme
En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: [Python3] Ayuda contar numeros en string
« Respuesta #3 en: 29 Diciembre 2019, 20:28 pm »

ciclo anindado...

en lugar de recorrer con un for a un range, recorre con un while y un contador tal que si consigues un numero, puedas hacer un ciclo dentro del ciclo hasta donseguir cualquier cosa que no sea numerico, en ese punto, sabes que ya tienes el numero completo
En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
tincopasan


Desconectado Desconectado

Mensajes: 1.286

No es lo mismo conocer el camino que recorrerlo.


Ver Perfil
Re: [Python3] Ayuda contar numeros en string
« Respuesta #4 en: 30 Diciembre 2019, 09:10 am »

hola:

Citar
no quiero saltarme a utilizar cosas que aún no he visto, en el PDF, no sabras otra manera de hacerlo sin utilizar listas o funciones avanzadas.
¿como adivinamos que has leído en el "PDF"?

se puede con un poco de lógica usando lo que ya has hecho! El problema es que eso no está en lo que leas.

Código
  1. string = input("Digita una cadena: ")
  2. numbers = 0
  3. anterior = False
  4. for i in string:#no sé para que usaste len,range,etc.
  5.    if i.isnumeric() and anterior == False:
  6.        numbers+=1
  7.        anterior=True
  8.    elif not i.isnumeric():
  9.        anterior=False
  10. print("Cantidad de números encontrados => ",numbers)
  11.  

No importa el lenguaje que uses, en este caso python, sino como buscas la solución.
En línea

reconFito

Desconectado Desconectado

Mensajes: 29


Ver Perfil
Re: [Python3] Ayuda contar numeros en string
« Respuesta #5 en: 31 Diciembre 2019, 03:00 am »

Gracias tincopasan por tu aporte, pero tengo una pregunta porqué en el código que hicistes evalua el primer digito del número total y el resto lo descarta.

Ejemplo:
Si ingreso "12texto23", e imprimo el valor tomando en cuenta el primer condicional me imprime 1, 2
no imprime 12, 23.Solo es una duda que me queda, puede que la pregunta sea inncesaria ya que el problema está resuelto.

Gracias.
En línea

tincopasan


Desconectado Desconectado

Mensajes: 1.286

No es lo mismo conocer el camino que recorrerlo.


Ver Perfil
Re: [Python3] Ayuda contar numeros en string
« Respuesta #6 en: 31 Diciembre 2019, 16:29 pm »

hola:
        el código ya te dió la respuesta, descarta los otros porque son una molestia para el planteo que hiciste, con la unidad ya sobra para saber que es un número, sin importar la cantidad de unidades, o sea 1 es un número y 12547893 también, como no quiero que los identifique en sus unidades solo verifico que haya una letra. Es muy simple, deberías intentar entenderlo, solo leyendo el condicional justamente.
Saludos.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Ayuda con separar numeros de un string
PHP
landerzx 4 5,333 Último mensaje 23 Noviembre 2012, 18:49 pm
por landerzx
Contar String
Java
Finishim 3 2,049 Último mensaje 22 Mayo 2015, 06:28 am
por DarK_FirefoX
Duda en funciones python3 pasarle parametro tipo string
Scripting
DamnSystem 2 2,010 Último mensaje 15 Diciembre 2016, 19:14 pm
por DamnSystem
Contar el periodo de caracteres en un String, PROLOG
Programación General
mitodb 2 3,080 Último mensaje 27 Mayo 2018, 02:16 am
por mitodb
contar numeros de un numero
Programación C/C++
Beginner Web 5 2,730 Último mensaje 18 Abril 2019, 16:03 pm
por CalgaryCorpus
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines