Если еще заявление выдает «ты прав», даже если минимальная длина не соблюдается - PullRequest
0 голосов
/ 17 марта 2019

Я только что запустил python, и у меня возникли проблемы с использованием оператора if else в python. Я пытаюсь создать программу, которая проверяет длину пароля. Если он соответствует минимальной длине, он должен напечатать сообщение о том, что вы правы, но если это не так, он должен напечатать, вы не правы. Когда я запускаю свой код, он выводит только «ты прав», хотя минимальная длина не соблюдается. Я не уверен, правильно ли я использовал оператор if else, нужно ли мне использовать 2 переменные, чтобы он работал?

MIN_PASSWORD_LENGTH = 6 #The length of the password is determined by the variable MIN_PASSWORD_LENGTH.
                    #We have assigned the variable with the value of 6.

password = input('Enter your password: ')
password_length = len(password)

if MIN_PASSWORD_LENGTH >= 6:
    print("Your password is correct!")
else:
    print("Your not correct!")

print('Number of characters used in password: ', password_length,'and the min length expected is: ',MIN_PASSWORD_LENGTH)

Ответы [ 3 ]

1 голос
/ 17 марта 2019

Вы сравниваете свою постоянную переменную, вы должны использовать:

if password_length >= MIN_PASSWORD_LENGTH:
    ...
    ...
0 голосов
/ 17 марта 2019

enter image description here Проблема была в вашем условии if. Кажется, вы хотели проверить, было ли password_lenth равно или больше MIN_PASSWORD_LENGTH, вместо этого вы проверяли, если MIN_PASSWORD_LENGTH >= 6 проверяет, было ли MIN_PASSWORD_LENGTH больше 6.

Вы можете исправить это, заменив if MIN_PASSWORD_LENGTH >= 6: на эту строку:

if password_length >= MIN_PASSWORD_LENGTH:

Надеюсь, это решение, которое вы искали.

0 голосов
/ 17 марта 2019

Оператор if должен быть

if password_length >= MIN_PASSWORD_LENGTH:
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...