Título: Generador de diccionario en Python Publicado por: PUAROT en 2 Abril 2017, 00:09 am he visto que se pueden crear diccionarios con expresiones generadoras, y me he puesto a practicar :-P
El caso es que me he propuesto crear un diccionario con los valores del 1 al 100 donde la clave sea un numero impar y el valor el par. Código: {1:2,3:4....} he intentado crear una expresion generadora por si sola y no he sido capaz, lo mas cerca que he estado es : Código
pero el resultado no es el esperado por mi por lo que he pensado en hacer un generador para los numeros pares y otro para los impares : Código y después crear el diccionario con un bucle for : Código
pero el resultado tampoco es el esperado por mi y me doy cuenta de que no es la logica correcta, así que intento : Código Estoy seguro de que es mucho mas facil de lo que yo estoy intentando, pero no encuentro la forma adecuada. En que estoy fallando ? Título: Re: Generador de diccionario en Python Publicado por: PUAROT en 4 Abril 2017, 20:39 pm He encontrado la forma de hacerlo, creo que es un poco chapucera, ya que estoy seguro que hay una forma mejor de hacerlo, pero...
Código
Título: Re: Generador de diccionario en Python Publicado por: tincopasan en 5 Abril 2017, 04:57 am la verdad no se bien cual es el planteo general, pero una forma de obtener ese resultado en una línea:
Código
Título: Re: Generador de diccionario en Python Publicado por: PUAROT en 5 Abril 2017, 20:23 pm Gracias por contestar, no había caído en hacerlo así.
El planteamiento es poder crear un diccionario con una condición para el key y otra para el value por ejemplo en el key los pares y el otro los múltiplos de tres Título: Re: Generador de diccionario en Python Publicado por: tincopasan en 6 Abril 2017, 19:11 pm Citar Publicado por: PUAROT una de las cosas que me gusta de python es que te permite resolver un planteo de muchas formas, te muestro otra con respecto a tu código:He encontrado la forma de hacerlo, creo que es un poco chapucera, ya que estoy seguro que hay una forma mejor de hacerlo, pero... Código a = (i for i in range(100) if i % 2 == 0) b = (i for i in range(100) if i % 2 != 0) c = {} for x in a: c
Código
Título: Re: Generador de diccionario en Python Publicado por: PUAROT en 6 Abril 2017, 21:45 pm ;-) ;-) ;-) ;-)
El zip es lo que me faltaba... voy a buscar que usos tiene y como se usa, que no lo he usado nunca y no lo controlo Muchas gracias !!! Título: Re: Generador de diccionario en Python Publicado por: Once en 8 Abril 2017, 21:04 pm Hola chicos, sé que ya está resuelta la duda, pero hay una forma más fácil de hacer, teniendo en cuenta que los números pares están dados por la expresion: 2n y los impares por 2n+1:
Código
Saludos! Título: Re: Generador de diccionario en Python Publicado por: PUAROT en 9 Abril 2017, 00:49 am Muchas gracias !!!
Como bien se dice por aquí, no hay una sola forma de hacer las cosas :-) Me ha gustado la forma de plantear el problema!! Sabia yo que era mucho mas facil de lo que parecia :P |