# [Tutor] recursive function password check

Dave Angel davea at davea.name
Wed Feb 6 15:53:52 CET 2013

```On 02/06/2013 08:44 AM, Mara Kelly wrote:
> Hi everyone, trying to write a program that has the user enter a password, checks if it contains any vowels, and if it does prints ' It is false that password(whatever the user enters) has no vowels,' and if it has no vowels prints it is True that password has no vowels...
> Here is what I have so far...def password(y):    vowels=["a","e","i","o"]    if y[0] in vowels:        return False    if len(y) ==0:        return True    elif(y[len(y)-1] != vowels):        return False    else:        return password(y[1:len(y)-1])x=input("Enter a password:")print("It is", password(x),"that",x,"has no vowles")
> As of now it just asks for the password, and then prints 'It is False that password(whatever was entered) has no vowles' for any word I enter. I think maybe some of my if statement conditions may be being returned to the function, but then not printing the appropriate one? Can anyone help? Thanks!
>
>
>

Please don't post in html email. It can seriously mess up your columns.
In your case, your email program didn't even try to provide a text
version, so those of us who read text emails can't make much sense of it.

Fortunately, I can decipher it by using someone else's reply.  I quote
that below:

>
>     vowels=["a","e","i","o"]

You might want to include "u" in that list.  And maybe the uppercase
versions as well.

>     if y[0] in vowels:
>         return False
>     if len(y) ==0:
>         return True
>     elif(y[len(y)-1] != vowels):

No, you want  if y[-1] in vowels:   instead.  A string is never going to
be equal to a list.

>         return False
>     else: