请提供一个用户可以使用的密码生成器，它会根据用户的条件生成一个安全的密码。



长度：8-12个字符

包含：大写字母、小写字母、数字、特殊符号
这里有一个简单的Python函数，可以按照指定的条件生成安全的密码：

```
import secrets
import string

def generate_password(length=12):
    alphabet = string.ascii_letters + string.digits + string.punctuation
    while True:
        password = ''.join(secrets.choice(alphabet) for i in range(length))
        if (any(c.islower() for c in password)
                and any(c.isupper() for c in password)
                and sum(c.isdigit() for c in password) >= 2
                and any(c in string.punctuation for c in password)):
            break
    return password
```

这个函数会生成一个十二位长的密码，包含大写字母、小写字母、数字和特殊符号。如果你需要一个长度为8-12个字符的密码，只需要把 `length=12` 改成 `length=random.randint(8, 12)` 即可。