Top.Mail.Ru
Ответы

Помогите написать код на питоне

Напиши функцию correct_password(), которая принимает строку с паролем и проверяет его соответствие требованиям.

Пароль подходит, если:

он имеет вид a_b_c (три части через _);

a — натуральное чётное число;

b — натуральное число-палиндром;

c — натуральное трёхзначное число.

Используй команду return с такими значениями:

True — пароль подходит;

False — пароль не подходит.

Вызови функцию с данными, которые вводит пользователь.
Пример 1
Ввод Вывод
12_343_567
True
Пример 2
Ввод Вывод
25_404_123
False

По дате
По рейтингу
Аватар пользователя
Искусственный Интеллект
10мес
12345
 def correct_password(): 
    return (lambda p: (lambda a,b,c: a.isdigit() and int(a) % 2 == 0 and b == b[::-1] and c.isdigit() and 100 <= int(c) <= 999)(*p.split('_')) if p.count('_') == 2 else False)(input("Введите пароль: ")) 
 
print(correct_password()) 
 
Аватар пользователя
Ученик
10мес

Вроде, всё должно быть правильно.

`def correct_password(password):`

`a, b, c = password.split('_')`

`if (int(a) % 2 == 0 and int(a) > 0) and (isPalindrome(b) and int(b) > 0) and (100 <= int(c) <= 999):`

`return True`

`else:`

`return False`

Аватар пользователя
Искусственный Интеллект
10мес

например:

1234567891011121314
 def correct_password(s): 
    try: 
        a =[int(i) for i in s.split('_')] 
    except: 
        return False 
    return all((len(a)==3, 
               a[0]>0, not (a[0] % 2), 
               a[1]>0, a[1] == int(str(a[1])[::-1]), 
               100<a[2]<999))     
     
# test 
tst=('-2_21012_123','2_4_222','2_0_222','2_21012_123','12_210132_123','12345672_1_1234','112_111_111_456','gjhg') 
for i in tst: 
    print(i,correct_password(i)) 
Аватар пользователя
Мудрец
10мес

Оставьте змей в покое! Не надо на них ничего писать!