Python - contar cuantas veces seguidas se repite un caracter en una cadena

 
Vista:
Imágen de perfil de Carmen
Val: 18
Ha aumentado su posición en 175 puestos en Python (en relación al último mes)
Gráfica de Python

contar cuantas veces seguidas se repite un caracter en una cadena

Publicado por Carmen (5 intervenciones) el 28/06/2021 05:26:05
Muy buenas noches.
Estoy tratando de realizar una función que reciba una cadena, evalue sus caracteres e imprima los caracteres que se repiten seguidamente y las veces que se repite.
(3,3,3, g,d,3,3,e,) tendria que imprimir que el 3 se repite 3 veces, la g 1 vez, la d 1 vez, el 3 dos veces, la e 1 vez.
de antemano agradezco sus ideas y sugerencias, feliz noche
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
-1
Responder
Imágen de perfil de Carmen
Val: 18
Ha aumentado su posición en 175 puestos en Python (en relación al último mes)
Gráfica de Python

contar cuantas veces seguidas se repite un caracter en una cadena

Publicado por Carmen (5 intervenciones) el 28/06/2021 14:35:40
gracias, si algo asi, gracias,
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Francisco Javier
Val: 249
Ha aumentado su posición en 29 puestos en Python (en relación al último mes)
Gráfica de Python

contar cuantas veces seguidas se repite un caracter en una cadena

Publicado por Francisco Javier (313 intervenciones) el 28/06/2021 11:09:37
1
2
3
4
from collections import Counter
string='3,3,3,g,d,3,3,e'
string=string.split(',')
print(Counter(string))
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Carmen
Val: 18
Ha aumentado su posición en 175 puestos en Python (en relación al último mes)
Gráfica de Python

contar cuantas veces seguidas se repite un caracter en una cadena

Publicado por Carmen (5 intervenciones) el 28/06/2021 14:34:46
gracias, el prbblema es que solo debe contarlos cuando son consecutivos. gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 2.808
Oro
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

contar cuantas veces seguidas se repite un caracter en una cadena

Publicado por tincopasan (1082 intervenciones) el 28/06/2021 21:17:26
Primero habría que definir como ingresas la cadena, pero supongo que será de la forma convencional.

hay tantas formas de hacer esto que da lástima.
1) más largo pero sin el uso de bibliotecas:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
texto="333gd33e"
 
def repetidos(text):
    text=" ".join(text)+"  "
    ant = text[0]
    con = 1
    total=[]
    for letra in text[2::2]:
        if letra == ant:
            con+= 1
        else:
            total.extend((ant, con))
            con = 1
        ant = letra
    return total
 
print(repetidos(texto))

2) usando otra biblioteca:
1
2
3
4
5
6
7
import itertools
texto="333gd33e"
def repite(text):
    for l, g in itertools.groupby(text, key=lambda x: x):
        print(l, len(list(g)))
 
repite(texto)

y hay más, pero ya me aburrí de tipear.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
Imágen de perfil de Carmen
Val: 18
Ha aumentado su posición en 175 puestos en Python (en relación al último mes)
Gráfica de Python

contar cuantas veces seguidas se repite un caracter en una cadena

Publicado por Carmen (5 intervenciones) el 28/06/2021 22:06:56
gracias!!! esta super!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Carmen
Val: 18
Ha aumentado su posición en 175 puestos en Python (en relación al último mes)
Gráfica de Python

contar cuantas veces seguidas se repite un caracter en una cadena

Publicado por Carmen (5 intervenciones) el 29/06/2021 01:23:18
te agradezco mucho! exelente tu respuesta, gracias por tomarte le tiempo y ayudarme, eternamente agradecida contigo, la verdad no habia podido hacerlo por mas que le dedicaba tiempo....feliz tarde
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar