TGViewer
About Python [ru] About Python [ru] @python_tesst · 6.43K subscribers
Post #1801 881
👩‍💻 Генератор случайных паролей с настройками

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

• Использовать ли цифры.
• Использовать ли буквы верхнего и/или нижнего регистра.
• Использовать ли специальные символы.

➡️ Пример:

password = generate_password(length=12, use_digits=True, use_uppercase=True, use_lowercase=True, use_specials=False)
print(password)
# Пример вывода: A1b2C3d4E5f6


Решение задачи🔽

import random
import string

def generate_password(length, use_digits=True, use_uppercase=True, use_lowercase=True, use_specials=True):
if length < 1:
raise ValueError("Длина пароля должна быть больше 0")

# Формируем набор символов
character_pool = ""
if use_digits:
character_pool += string.digits
if use_uppercase:
character_pool += string.ascii_uppercase
if use_lowercase:
character_pool += string.ascii_lowercase
if use_specials:
character_pool += "!@#$%^&*()-_=+[]{}|;:,.<>?/"

if not character_pool:
raise ValueError("Нужно выбрать хотя бы один тип символов")

# Генерация пароля
return ''.join(random.choice(character_pool) for _ in range(length))

# Пример использования
password = generate_password(length=12, use_digits=True, use_uppercase=True, use_lowercase=True, use_specials=True)
print(password)
More from @python_tesst
  1. Oct 7, 2026Python в Cloudflare Workers: всё, теперь по-взрослому — GA Cloudflare перестала держать Py…
  2. Oct 7, 2026Post #3229
  3. Oct 7, 2026PyCoder’s Weekly #755 — 6 октября 2026 Python 3.15.0rc3: в новых фичах lazy loading что-то…
  4. Oct 6, 2026Похоже, команда OpenAI всё-таки вышла на тропу искупления. И теперь режим такой: каждый де…
  5. Oct 6, 2026webAI выкатила TwIL-LM3-Pro — компактную штуку на 3,66B параметров, заточенную строго под…
  6. Oct 6, 2026Post #3225
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →