Sent with ProtonMail Secure Email.
‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐
On Thursday, 16 de July de 2020 16:53, Lemarchand Barker
<lemarchand8...@gmail.com> wrote:
> Buenas, estoy viendo las opciones que me dieron con count().
> Ahora viene mi pregunta, cuál sería la diferencia entre lo que me recomendó:
> Juan José:
> va = cadena.count('a')
Para que sea igual que usando Counter deberías usar cadena.lower().count('a').
En este primer caso solo contará lo que le pidas.
>
> Y lo que dijo:
> Ricardo:
>
> > > > from collections import Counter
> > > > cuentas = Counter(cadena.lower())
> > > > va = cuentas.get('a', 0)
> > > > ve = cuentas.get('e', 0)
> > > > va
En este caso, en cuentas tienes un contador de los distintos elementos (letras,
espacios,...), no solo las vocales.
La solución siempre dependerá del problema. Para este problema concreto yo
usaría Counter porque me parece más elegante pero la primera opción sería
igualmente válida. Si tienes que escalar la solución a documentos con millones
de letras y el rendimiento es importante quizá habría que buscar otra
respuesta. Si no quieres hacer imports quizá la primera solución sea más
interesante (para ahorrar ms en un CLI, por ejemplo), si quieres hacer...
Saludos.
>
> 10
>
> > > > ve
>
> 7
>
> Gracias, saludos
>
> El mié., 15 jul. 2020 a las 21:49, lemarchand8679
> (lemarchand8...@gmail.com) escribió:
>
> > Mañana lo reviso también, muchas gracias
> > Enviado desde mi smartphone Samsung Galaxy.
> > -------- Mensaje original --------
> > De: Ricardo Cárdenes ricardo.carde...@gmail.com
> > Fecha: 15/7/20 21:10 (GMT-03:00)
> > A: La lista de python en castellano python-es@python.org
> > Asunto: Re: [Python-es] [Consulta] max() y min()
> > Te voy a dar una mejor:
> >
> > > > > from collections import Counter
> > > > > cuentas = Counter(cadena.lower())
> > > > > va = cuentas.get('a', 0)
> > > > > ve = cuentas.get('e', 0)
> > > > > va
> > > > > 10
> > >
> > > > > ve
> > > > > 7
> >
> > Tras ejecutar la segunda línea, cuentas es un objeto con la misma interfaz
> > que un diccionario.
> > Observa que pasé cadena.lower() a Counter, pensando que quieres todas las
> > vocales, no sólo las minúsculas. Adáptalo según necesites.
> > On Wed, Jul 15, 2020 at 11:08 AM Lemarchand Barker lemarchand8...@gmail.com
> > wrote:
> >
> > > Lo voy a buscar y voy a ver.
> > > Muchas gracias
> > > El mié., 15 jul. 2020 a las 18:03, Juan José Gómez Romera
> > > (jjgom...@gmail.com) escribió:
> > >
> > > > Hola, como uso te hace la función q necesitas, yo sin embargo
> > > > recortaria código usando count:
> > > > va = cadena.count('a')
> > > > ...
> > > > Perdón por ser tan parco con el código, estoy desde móvil.
> > > > El mié., 15 jul. 2020 22:28, Lemarchand Barker lemarchand8...@gmail.com
> > > > escribió:
> > > >
> > > > > Hola, vengo con otra pregunta tonta.
> > > > > Estaba jugando con for, la típica de buscar máximos y mínimos, les
> > > > > dejo el código:
> > > > > lista = []
> > > > > cadena = "Esto es una cadena que contiene varias letras y muchas
> > > > > palabras"
> > > > > vocales = ['a', 'e', 'i', 'o', 'u']
> > > > > for x in cadena:
> > > > > if x == 'a':
> > > > > va = va + 1
> > > > > elif x == 'e':
> > > > > ve = ve + 1
> > > > > elif x == 'i':
> > > > > vi = vi + 1
> > > > > elif x == 'o':
> > > > > vo = vo + 1
> > > > > elif x == 'u':
> > > > > vu = vu + 1
> > > > > lista.append(va)
> > > > > lista.append(ve)
> > > > > lista.append(vi)
> > > > > lista.append(vo)
> > > > > lista.append(vu)
> > > > > total = va + ve + vi + vo + vu
> > > > > max_item = max(lista, key=int)
> > > > > min_item = min(lista, key=int)
> > > > > print(f"Mayor: {max_item}")
> > > > > print(f"Menor: {min_item}")
> > > > > Bueno mi consulta es la siguiente, está bien que haya utilizado max y
> > > > > min para tratar de buscar cuál es la vocal que más se repite y menos
> > > > > se repite? Pero el tema es el siguiente hay 2 vocales que se repiten
> > > > > solamente 2 veces, que son: i y o. Asumo que por el orden de los
> > > > > elementos en la lista el 2 que muestra se corresponde a la i.
> > > > > Bueno eso es todo, consultar si está bien utilizado el max y el min,
> > > > > saludos y gracias.
> > > > >
> > > > > Python-es mailing list
> > > > > Python-es@python.org
> > > > > https://mail.python.org/mailman/listinfo/python-es
> > > >
> > > > Python-es mailing list
> > > > Python-es@python.org
> > > > https://mail.python.org/mailman/listinfo/python-es
> > >
> > > Python-es mailing list
> > > Python-es@python.org
> > > https://mail.python.org/mailman/listinfo/python-es
>
> Python-es mailing list
> Python-es@python.org
> https://mail.python.org/mailman/listinfo/python-es
_______________________________________________
Python-es mailing list
Python-es@python.org
https://mail.python.org/mailman/listinfo/python-es