"""
5. Напишите шаблон регулярного выражения,
  который соответствовал бы паролю,
  состоящему из 8-12 символов, среди которых могут
  быть строчные и заглавные буквы латинского
  алфавита, цифры, нижнее подчеркивание, звездочка,
  процент и амперсанд.
  Пароль обязательно должен включать в себя одну строчную
  букву, одну заглавную букву и одну цифру.

"""

import re

password = re.compile(r'^(?=.*[0-9].*)(?=.*[a-z].*)'
                      r'(?=.*[A-Z].*)[0-9a-zA-Z_*%&]{8,12}$')
print(bool(password.match('abcd4A_*%&')))
