Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: ANGELAKUMAN en 23 Febrero 2015, 22:53 pm



Título: [Python] usuario y contraseña
Publicado por: ANGELAKUMAN en 23 Febrero 2015, 22:53 pm
Hola buenas noches

necesito hacer un programa con python que pida:


-el nombre de usuario con una serie de condiciones:
       -debe de ser alfanumerico
       -debe de tener al menos una letra y un numero

-la contraseña:
      -minimo de 6 caracteres
      -debe contener minuscula,mayuscula,numeros y al menos un caracter no alfanumerico
       -no puede tener espacios en blanco

de momento tengo esto:
Código
  1. print"introduce el nombre de usuario"
  2. print"el nombre debe de tener de 5 a 10 caracteres"
  3. nombre=raw_input()
  4. if(len(nombre)<5):
  5.    print"el usuario debe de tener mas de cinco caracteres"
  6. if(len(nombre)>10):
  7.    print"el usuario debe de tener menos de diez caracteres"

acabo de empezar con programacion
por favor q alguien me ayude
muchaaas graciaaaas  



[MOD]: Lo aviso por última vez, los códigos deben ir en su respectiva etiqueta de código.
Tienes un ejemplo de cómo hacerlo, en mi firma (Eleкtro).
Cualquier nuevo comentario que infrinja esta norma podrá ser eliminado sin previo aviso.


Título: Re: PROGRAMA usuario y contraseña
Publicado por: Eleкtro en 23 Febrero 2015, 23:39 pm
Para el primer problema, el del nombre de usuario, puedes utilizar las siguientes funciones:

  • str.isalpha(), que determina si todos los caracteres de un string son alfabéticos.
  • str.isdigit(), que determina si todos los caracteres de un string son numéricos.
  • str.isalnum(), que determina si todos los caracteres de un string son alfanuméricos.

Ejemplo:
Código
  1. print "Introduce el nombre de usuario:"
  2. username=raw_input()
  3.  
  4. if not str.isalnum(username):
  5.   print "El nombre de usuario debe contener solamente caracteres alfanumericos."
  6.  
  7. elif not (any(char.isalpha() for char in username)) or \
  8.     not (any(char.isdigit() for char in username)):
  9.   print "El nombre de usuario debe contener al menos una letra y un digito."
  10.  
  11. else:
  12.   print "El nombre de usuario es correcto."

El otro problema, el de la la contraseña, ya lo tienes medio resuelto, aunque creo que has confundido el ejemplo del nombre d eusuario con el de la contraseña... y además los valores de las condiciones no los pusiste como indica el ejercicio (estás comprobando si tiene menos de 5 caracteres, no menos de 6), y el resto del problema lo puedes intentar solucionar por ti mismo hechándole un vistazo a los métodos que he comentado arriba, y a otros métodos como str.islower() y str.isupper(), te aseguro que es algo muy facil, intenta hacerlo.

Lee la documentación oficial:
5.6.1. String Methods (https://docs.python.org/2/library/stdtypes.html#string-methods)

Saludos.


Título: Re: [Python] usuario y contraseña
Publicado por: ANGELAKUMAN en 24 Febrero 2015, 00:41 am
Muchas gracias
Por la paciencia y por la amabilidad
Lo intentaré
Saludos Elektro :D


Título: Re: [Python] usuario y contraseña
Publicado por: tessto en 7 Abril 2015, 12:13 pm
Podrías probar con expresiones regulares, suerte!