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

 

 


Tema destacado: AIO elhacker.NET 2021 Compilación herramientas análisis y desinfección malware


  Mostrar Mensajes
Páginas: 1 2 3 4 5 [6] 7 8 9 10 11 12 13
51  Programación / Scripting / Re: que le hace falta este codigo en python en: 5 Diciembre 2015, 18:55 pm
Hola, creo que estás algo confundido, type solo te dice el tipo de una variable. Ahora, el problema que tienes con el código que acabas de subir es que estás intentando convertir a int lo que te devuelve la función input() así que si el usuario ingresa algo que no sea un número te va a arrojar un error (este es el error que debes capturar). La otra opción es como te digo una lista blanca, algo así:

Código
  1. analizar = raw_input("Ingrese la cadena: ")
  2.  
  3. print all(map(lambda x: x in map(str, range(10)), analizar))

Te devuelve True si todas los caracteres son números y False si no lo son.

Saludos!
52  Programación / Scripting / Re: que le hace falta este codigo en python en: 5 Diciembre 2015, 16:49 pm
Bueno, depende un poco de si estás trabajando en Python3 o 2. (Si no estoy mal raw_input no está en python3). Si estás trabajando en Python2 input() solo acepta números, si estás en Python3 no hay ese problema. Ahora, lo que debes tener en cuenta es que ya sea que uses raw_input en Python2 o input en Python3 siempre te va a devolver una variable de tipo string, así que no puedes hacer lo que te dice Darioxhcx.

Teniendo esto en cuenta, lo que tienes que hacer es verificar si lo que está dentro del string es un número o no y tienes varias formas de hacerlo. Puedes intentar convertir la cadena a int y capturar los errores en caso de que lo que hay en el string no sea un número, puedes usar listas blancas. Hay muchas opciones, usa la que más se acomode a lo que necesitas.

Saludos!
53  Programación / Scripting / Re: [Python] En que falla mi script? en: 7 Noviembre 2015, 01:14 am
Cuentanos como te va, pero en teoría debe funcionar. Eso sí, ten en cuenta que la lista de letras va hasta la z así que lo más seguro (si itertools hace las permutaciones en orden) es que te llegue hasta zz9999 y no hasta ww9999

Saludos!
54  Programación / Scripting / Re: [Python] En que falla mi script? en: 7 Noviembre 2015, 00:44 am
Iba a editar mi comentario, ya que no había notado que lo quieres hacer es generar todas las combinaciones (imagino para un diccionario) pero como respondieron hago uno nuevo.

El código está bien, lo que no estás considerando es que itertools te está devolviendo un generador y los generadores se agotan apenas llegan al final. Así cuando recorres el primer elemento de res obtienes "aa" pero en el bucle interior agotas el generador res2. cuando llegas al segundo elemento de res ya no te quedan elementos en res2 así que no se entra al segundo for y no te imprime nada más (aunque el primer busle sí itera todo res).

Por ahora sólo se me ocurre que conviertas el generador res2 en una lista:

Código
  1. res2 = list(itertools.product('0......', repeat=4))
  2.  

Aunque no es muy recomendable.

Edito I: O puedes generar cada vez, dentro del primer for a res2

Edito II: @tincopasan tienes razón, pensé que solo queria generar cada letra repetida dos veces y cada número cuatro (eso me pasa por leer rápido). Y lo que necesita es generar las permutaciones de longitud dos de las letras unidas a las permutaciones de longitud cuatro de los números.

Saludos!


55  Programación / Scripting / Re: [Python] En que falla mi script? en: 7 Noviembre 2015, 00:00 am
No es necesario complicarse tanto, recuerda que las cadenas comparten algunas propiedades con las listas y las tuplas:

Código
  1. letras = 'abcdefghijklmnopqrstuvwxyz'
  2. numeros = '0123456789'
  3.  
  4. for letra in letras:
  5.    for numero in numeros:
  6.        print (letra * 2 ) + (numero * 4)

Saludos!
56  Programación / Scripting / Re: Comprensión de lista en python en: 17 Febrero 2015, 23:27 pm
La parte de Python la tienes bien, lo que tienes mal es la parte matemática, el cubo de un número es el número al exponente 3 o el número multiplicado por si mismo tres veces.

Además, cuando haces for c in range(1, 10) en realidad estás recorriendo los números del 1 al 9

Ésta sería la correción:

Código
  1. cubos_por_cuatro=[c ** 3 for c in range(1,11) if (c**3) % 4 == 0]
  2. print cubos_por_cuatro

Citar
[8, 64, 216, 512, 1000]

Saludos!
57  Programación / Scripting / Re: help! función que permita aprox un número a su múltiplo de 6 inmediato en python en: 3 Febrero 2015, 00:56 am
Código
  1. x = int(raw_input("x: "))
  2.  
  3. aprox = x + (6 - (x % 6))
  4.  
  5. print aprox

Sin necesidad de bucles.

Saludos!
58  Programación / Scripting / Re: Python, Listas en: 21 Noviembre 2014, 07:39 am
Código
  1. lista = ["abc", "jkp", "123"]
  2.  
  3. print map(lambda x: sum(map(ord, x)), lista)

Saludos!
59  Programación / Scripting / Re: [Ayuda]Como puedo llamar una variable de modulo en una funcion en: 22 Junio 2014, 18:27 pm
En realidad las dos variables var son distintas, una es accesible a nivel de módulo (var = 10) y la segunda a nivel de la función funcion (var = 9). Para modificar el valor, puedes hacer global la variable:

Código
  1. var = 10
  2.  
  3. def funcion():
  4.    global var
  5.    var = 9
  6.    print(var)
  7.  
  8. funcion()
  9. print(var)

Saludos!
60  Programación / Scripting / Re: [python] Doble for con break en: 2 Junio 2014, 03:03 am
Primero de todo gracias por contestar tan rapido :)
Estoy implementando el algoritmo Astar y yo lo que necesito es eliminar la sublista entera.

Al final hice un pequeño truco para poder eliminarlo, os dejo el código para quien le interese. Aun asi, me gustaria saber porque al eliminar la sublista, el bucle ya no detecta las siguientes sublistas.

Debe ser porque estas iterando y modificando al tiempo la misma lista. Se me ocurre que puedes usar el slicing para iterar una copia de la lista original y modificar la original y te puedes ahorrar el "pequeño truco".

Código
  1. def yop():
  2.    lista = [[3,2,1], [1,2,2,3,1], [4,2,1], [5,2,3,2,1], [3,2,7,5,3,1]]
  3.    for path in lista[:]:
  4.        for nodo in path:
  5.            if path.count(nodo) >= 2:
  6.                lista.remove(path)                
  7.                break
  8.    print lista

Saludos!
Páginas: 1 2 3 4 5 [6] 7 8 9 10 11 12 13
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines