Ryan Leslie Ryan Leslie - 10 months ago 50
Python Question

Checking if an input is formatted correctly in Python 3

so I've been assigned an assignment (obviously) to check if an input that a user has entered is formatted correctly, in the way AA99AAA (where A is a letter and 9 is a number from 0 to 9). So for the first character in the input, it would have to be a letter or python would return some sort of error and so on, you get the idea. I've got no clue where to start with this, I've tried looking around and haven't found anything - I guess I just don't know what it is I'm looking for. Any pointers would be greatly appreciated, thanks!

Answer Source

To do this, you could split the string into 3 parts (the first group of letters, the numbers, and then the second group of letters). Then you can use s.isalpha() and s.isnumeric().

For example:

while True:
    c=input('Password: ')
    if len(c)==7 and c[:2].isalpha() and c[2:4].isnumeric() and c[4:].isalpha():
        print('Invalid input')
print('Valid input')