Python - obtener los dígitos impares

 
Vista:
sin imagen de perfil
Val: 29
Ha disminuido su posición en 4 puestos en Python (en relación al último mes)
Gráfica de Python

obtener los dígitos impares

Publicado por mike (11 intervenciones) el 19/06/2019 02:11:41
saludos
¿como puedo hacer esto en python 2.7?

Los números de las claves de dos cajas fuertes están mezcladas en un número entero llamado clave maestra. Determine ambas claves, la primera clave se construye con los dígitos impares de la clave maestra y la segunda con los pares.
• Ejemplo: Clave Maestra= 12345, clave1=135, clave2=24.

gracias por ayudarme, soy nuevo y quiero aprender
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 765
Bronce
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

obtener los dígitos impares

Publicado por dario (185 intervenciones) el 19/06/2019 05:57:42
Esto es lo que quieres.
Salu2.

1
2
3
4
5
6
7
8
9
10
11
12
claveMaestra = [1,2,3,4,5]
clave1 = []
clave2 = []
 
for i in claveMaestra:
  if i % 2 != 0:
    clave1.append(i)
  else:
    clave2.append(i)
 
print clave1
print clave2
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 joel
Val: 3.475
Oro
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

obtener los dígitos impares

Publicado por joel (901 intervenciones) el 19/06/2019 10:11:19
El código de Dario es perfecto!!!

Otra manera puede ser utilizando filter()

1
2
3
4
5
6
7
claveMaestra = [1,2,3,4,5]
 
clave1=filter(lambda x: x % 2 != 0, claveMaestra)
clave2=filter(lambda x: x in clave2, claveMaestra)
 
print clave1
print clave2
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 kip
Val: 1.120
Bronce
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

obtener los dígitos impares

Publicado por kip (257 intervenciones) el 19/06/2019 21:47:20
Hola, te dejo otra forma por si te sirve:

1
2
3
4
5
6
7
8
9
10
11
12
13
from math import ceil, log10
 
master_key = 12345
clave1 = clave2 = 0
 
while master_key:
  master_key, digit = divmod(master_key, 10)
  if digit & 1:
    clave1 += digit * (10 ** ceil(log10(clave1 or 1)))
  else:
    clave2 += digit * (10 ** ceil(log10(clave2 or 1)))
 
print(clave1, clave2)

O puede ser tambien:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
from math import floor, log10
 
master_key = 12345
clave1 = clave2 = 0
 
while master_key:
  digit, master_key = divmod(master_key, 10 ** floor(log10(master_key)))
 
  if digit & 1:
    clave1 = clave1 * 10 + digit
  else:
    clave2 = clave2 * 10 + digit
 
print(clave1, clave2)
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

obtener los dígitos impares

Publicado por luis fernando (1 intervención) el 13/10/2020 00:21:03
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
clave_maestra=[]
clave1=[]
clave2=[]
n_claves=int(input("ingrese el numero de terminos de la lista : "))
for i in range (0,n_claves):
  n_valor=int(input("ingrese el valor del elemento Nº"+str(i+1)+" : "))
  clave_maestra.append(n_valor)
print(clave_maestra)
for i in clave_maestra:
  if((i%2)==0):
    clave2.append(i)
  else:
    clave1.append(i)
print(clave1)
print(clave2)


o tambien direccto seria asi:

1
2
3
4
5
6
7
8
9
10
clave_maestra=[1,2,3,4,5]
clave1=[]
clave2=[]
for i in clave_maestra:
  if((i%2)==0):
    clave2.append(i)
  else:
    clave1.append(i)
print(clave1)
print(clave2)
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