(self)
| 140 | ] |
| 141 | |
| 142 | def generate(self) -> str: |
| 143 | password_list = [] |
| 144 | for count, chars in self.category_map: |
| 145 | password_list.extend(choice(chars) for i in range(count)) |
| 146 | shuffle(password_list) |
| 147 | return ''.join(password_list) |
| 148 | |
| 149 | @classmethod |
| 150 | def create_from_rules(cls, rule_string: str, length: Optional[int] = None, |
no outgoing calls