problema en python

Iniciado por bygatox, 26 Febrero 2014, 20:00 PM

0 Miembros y 1 Visitante están viendo este tema.

bygatox

buenas, estoy haciendo un programa muy básico en python y no se cual es el problema por que se cierra automáticamente al abrir, el programa seria este:

Código (python) [Seleccionar]
print "security"
cont = raw_input("pass?")
if cont == "password123"
print "lo lograste"
else
print "no lo lograste"


Eleкtro

No estás usando la sintaxis correcta:
Citarif cont == "password123"
else
Además de eso, las instrucciones dentro del bloque del If, deben indentarse.

Prueba así:
Código (python) [Seleccionar]
def security():
print "security"
cont = raw_input("pass?")
if cont == "password123":
print "lo lograste"
else:
print "no lo lograste"
security()

security()


Saludos








bygatox

#2
muchas gracias :),
si no te molesta tendrás manuales y/o tutoriales buenos por que no pensé equivocarme en algo tan básico ni entiendo por que se ocupara el "security ()" al final

ya encontre en el mismo foro gracias :)

Príncipe_Azul

#3
Hola bygatox, te explicaré este código que he modificado del compañero Elektro:

def security(): #Nombre de la funcion
   print "security" #Imprime en pantalla el texto "security" (sin comillas)
   cont = raw_input("pass?") #Guarda en la variable cont el valor del texto ingresado por el usuario
   if cont == "password123": #Condicional if que compara si el texto que escribio el usuario es igual que el texto "password123"
       print "lo lograste" #Si la condicion se cumple se imprimira en la consola el texto "lo lograste"
   elif cont.lower() == "salir": #En caso que el texto que ingreso el usuario no sea igual que "password123", compara que el usuario haya escrito la palabra "salir", en caso afirmativo cierra la consola equivalente a salir del programa, el método .lower() se utiliza para pasar un X texto a TODO minusculas, asi que por mas que el usuario escriba SALIR lo mismo se cierra el prograam.
       exit() #Comando para cerrar el programa
   else: #Si no se cumple ninguna de las 2 condiciones, Python ejecuta los comandos del condicional "else:"
       print "no lo lograste" #Texto que se imprimira en la consola/pantalla cuando el usuario no haya escrito ni "password123" ni tampoco "salir"
       security() #Repite el proceso de pedirle al usuario que escriba nuevamente la clave, esto se conoce como "bucle", ya que vuelve a llamar la misma función tantas veces hasta que se escribe la palabra "salir" para finalizar el programa

security() #Método para llamar a la funcion security


Bueno con esto espero que no te queden más dudas amigo, lo que si siempre usa la codificación de caracteres al comienzo de tu script para evitar errores de códigos ASCII, para eso utilizá este código al comienzo de tu script:

# -*- coding: utf-8 -*-

Eso funciona tanto para Linux como Windows, OJO en algunos casos vas a tener que usar esto en las variables, por ejemplo:

Var1 = u"Este es un lindo día"
Var2 = u"Que hermosa canción que estoy escuchando"
Var3 = u"Hoy es miércoles"


Esa letra "u" que está antes de entrecomillar las variables es para especificar que se trata de una variable UNICODE.

IMPORTANTE: Python es Case Sensitive (Distingue entre letras mayúsculas y minúsculas) por ejemplo: Hola, HOLA y hola son tres palabras diferentes para Python.
Otra cosa importante, por lo menos en mi opinión y experiencia, tratá siempre de no usar Tabulaciones para dejar espacios, por más que sea más fácil en los códigos ya que a mi en lo personal eso me daba problemas, errores en los códigos.
Para solucionar esto utilizá SIEMPRE el editor NotePad++ que es excelente, mejor imposible, bajate la última versión que está espectacular, cuando estés más en el tema y hagas códigos un poco más difíciles podrás entender como trabaja ese programa con las sintáxis, colores, avisos, etc.
En ese mismo programa yo lo he configurado para que al usar la tecla TAB me deje 4 espacios, sería equivalente a dejar 4 espacios con la barra espaciadora.

Bueno eso es todo!!
Buena suerte!!

PD: Te recomiendo el tutorial Python para todos que está excelente, fácil para novatos y muy bien explicado.
Foro de Ayuda de Programación General, IRC y mIRC Scripting: