I'm writing code for a program that asks the user for their telephone number. It goes through multiple conditionals until a valid number format is given. One of the conditions is that the first 3 digits of the input must be between 200 and 999. The problem is I'm pretty sure I'm writing it correctly, but I have no idea why it's not 'tripping' the condition when I put an invalid number in. Like, say, '127-444-9870'. All the other conditions are tripping. I thought maybe I just couldn't compare strings in this way, but when I ran it in the console, it worked properly. To test I put num1 = '1' and num2 = '3' and then ran num1 < num2 which returned 'true'. So, I think what I'm doing is possible.

Here's my code so far:

```
number = ''
while number.lower() != 'q':
    number = input('Enter phone number or q to quit: ')
    numnums = number.split('-')
    if number.lower() == 'q':
        break
    elif number.count('-') != 2:
        print('Phone number should have 2 dashes.')

    elif not numnums[0].isdigit() or len(numnums[0]) != 3:
        print('First part of phone number must be a 3-digit number.')

    elif not numnums[1].isdigit() or len(numnums[1]) != 3:
        print('Second part of phone number must be a 3-digit number.')

    elif not numnums[2].isdigit() or len(numnums[2]) != 4:
        print('Last part of phone number must be a 4-digit number.')

    elif '200' > numnums[0] > '999':
        print('first 3 digits must be between 200 and 999')

    else:
        number = number.replace('-', '.')
        print(f'Phone number with dashes replaced: {number}')

```