Генерируем пароли с помощью Python!
Создадим пароль, который содержит буквы разного регистра, цифры и спецсимволы.
Импортируем библиотеки и формируем набор символов:
Создаём функцию для генерации пароля с минимальной длиной и обязательными категориями:
Проверяем генерацию:
🔥 Просто, безопасно, можно встроить во внутренние скрипты, тестовые данные или утилиты для пользователей
Создадим пароль, который содержит буквы разного регистра, цифры и спецсимволы.
Импортируем библиотеки и формируем набор символов:
import string, secrets
chars = string.ascii_letters + string.digits + "!@#$%^&*()"
special_chars = "!@#$%^&*()"
Создаём функцию для генерации пароля с минимальной длиной и обязательными категориями:
def generate_password(length=12):
while True:
pwd = ''.join(secrets.choice(chars) for _ in range(length))
if (any(c.islower() for c in pwd) and
any(c.isupper() for c in pwd) and
any(c.isdigit() for c in pwd) and
any(c in special_chars for c in pwd)):
return pwd # → пароль безопасен
Проверяем генерацию:
for _ in range(3):
print(generate_password())
# примеры: fG4@k9L!p2M1
🔥 Просто, безопасно, можно встроить во внутренние скрипты, тестовые данные или утилиты для пользователей
Всем доброго вечера. Я приеду уже завтра и у меня на уме есть несколько идей для ботов, которые можно попробовать реализовать. Какого бота сделать первым?
Anonymous Poll
25%
Бот для генерации баз данных (в форматах .csv, .db, .xml, .json).
13%
Бот для генерации капчи
50%
Бот для подсчёта килокалорий (норма воды, чистый жир в теле и ТД) с базой данных
25%
Бот для извлечения текста из песен
25%
Бот для генерации цветомузыки (как на дискотеке)
25%
Бот для анонимных сообщений с базой данных
38%
Мини-игра Сапёр
Сегодня создаем кастомный итератор и реализуем
Для гибкого управления порядком обхода данных используют собственные итераторы, реализуя методы
Начнём с создания класса
В
Метод
Проверяем работу кастомного итератора:
Важно: после завершения итерации объект нельзя переиспользовать:
🔥 Альтернатива: для простых случаев используйте генераторы — они короче и удобнее.
iter + nextДля гибкого управления порядком обхода данных используют собственные итераторы, реализуя методы
__iter__() и __next__().Начнём с создания класса
Countdown, который будет отсчитывать числа от start до 1 включительно:class Countdown:
def __init__(self, start):
self.current = start
В
__init__ мы сохраняем текущее значение. Теперiterм метод __iter__(), который возвращает сам iterdef __iter__(self):
return self
Метод
__next__() будет возвращать текущее число, уменьшать его и вызывать исключение StopIteration, когда достnextля:def __next__(self):
if self.current == 0:
raise StopIteration
value = self.current
self.current -= 1
return value
Проверяем работу кастомного итератора:
for num in Countdown(5):
print(num) # 5, 4, 3, 2, 1
Важно: после завершения итерации объект нельзя переиспользовать:
countdown = Countdown(3)
list(countdown) # [3, 2, 1]
list(countdown) # [] - пустой список!
🔥 Альтернатива: для простых случаев используйте генераторы — они короче и удобнее.
Как создать свой сайт на python 🐍
Для создания своего сайта на python можно использовать фреймворк Flask. Это очень мощный инструмент, которые позволяет создавать свои сайты через Python без особого знания HTML и стилей CSS
Установка Flask:
Базовое создание сайта при помощи Flask:
Для создания нескольких страниц добавляйте больше декораторов @app.route
Также Flask позволяет работать с заготовками HTML-кода:
>>> Если вы заинтересовались созданием сайтов, то что вам следует изучить:
1. Работу с Forms
2. Работу с бд (базами данных). Например SQLAlchemy
3. Научиться работать с регистрацией пользователя и ТД.
>>> Документация по Flask на русском 🔥
>>> Документация по Flask на английском 🔥
Для создания своего сайта на python можно использовать фреймворк Flask. Это очень мощный инструмент, которые позволяет создавать свои сайты через Python без особого знания HTML и стилей CSS
Установка Flask:
pip install flask
Базовое создание сайта при помощи Flask:
from flask import Flask #импортируем библиотеку
app = Flask(__name__) #создаём пустую страницу сайта с названием модуля (__name__)
@app.route('/') #по этому url будет открываться одна страница
def HelloWorld():
return 'Hello, World!' #то что будет на сайте
if __name__ == '__main__':
app.run(debug=True) #запускаем в режиме отладки
Для создания нескольких страниц добавляйте больше декораторов @app.route
@app.route('/')
def main_route():
return 'main_route'
@app.route('/about')
def about():
return 'about'
@app.route('/questions')
def questions():
return 'Вопрос - ответ'Также Flask позволяет работать с заготовками HTML-кода:
from flask import Flask, render_template
app = Flask(__name__)
@app.route('/')
def main_template():
return render_template('index.html')
>>> Если вы заинтересовались созданием сайтов, то что вам следует изучить:
1. Работу с Forms
2. Работу с бд (базами данных). Например SQLAlchemy
3. Научиться работать с регистрацией пользователя и ТД.
>>> Документация по Flask на русском 🔥
>>> Документация по Flask на английском 🔥
🔥3
This media is not supported in your browser
VIEW IN TELEGRAM
Всем привет ✋
Мне надоело делать ботов, поэтому я решил сделать свой проект мини консоль. Там будет множество полезных функций и сегодня я начал разрабатывать эту консоль. Объявляю первый день. Интерфейс консоли сделан при помощи библиотеки PyQt6. Он сгенерирован с помощью ИИ (извините, но я не настолько хорошо знаю эту библиотеку). Все команды реализованы при помощи моих навыков программирования. Консоль я буду улучшать и добавлять новые команды.
Что я хочу в ней изменить и что добавить:
1. Добавить команды для того чтобы узнать информацию о своём пк
2. Добавить мини приложение для открытия самой консоли
3. Сделать какие-нибудь фановые команды (например бросить кубик или прокрутить барабан)
Мне надоело делать ботов, поэтому я решил сделать свой проект мини консоль. Там будет множество полезных функций и сегодня я начал разрабатывать эту консоль. Объявляю первый день. Интерфейс консоли сделан при помощи библиотеки PyQt6. Он сгенерирован с помощью ИИ (извините, но я не настолько хорошо знаю эту библиотеку). Все команды реализованы при помощи моих навыков программирования. Консоль я буду улучшать и добавлять новые команды.
Что я хочу в ней изменить и что добавить:
1. Добавить команды для того чтобы узнать информацию о своём пк
2. Добавить мини приложение для открытия самой консоли
3. Сделать какие-нибудь фановые команды (например бросить кубик или прокрутить барабан)
Forwarded from Roblox
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
2 день разработки консоли
Сегодня я добавил новые команды. В частности это команды для получения информации о своём компьютере и добавил немного математики. Также добавил фановые команды (бросок кубика и прокрутка барабана). Планирую написать мини приложение на customTkinter для запуска этой консоли (возможно перепишу его на PyQt6, когда изучу). Пока что всё....
Сегодня я добавил новые команды. В частности это команды для получения информации о своём компьютере и добавил немного математики. Также добавил фановые команды (бросок кубика и прокрутка барабана). Планирую написать мини приложение на customTkinter для запуска этой консоли (возможно перепишу его на PyQt6, когда изучу). Пока что всё....
Тренируем мозги с задачами по ML и AI.
Я сам по ним учусь
Два незаменимых ресурса для практики в машинном обучении и нейросетях:
▶️ Deep-ML — задачи по линейной алгебре, машинному и глубокому обучению. Подходит для постепенного погружения.
▶️ Tensorgym — упражнения разного уровня сложности, чтобы закрепить теорию и прокачать практику.
Идеально подойдёт, если хотите подтянуть навыки и разобраться в тонкостях ML
Я сам по ним учусь
Два незаменимых ресурса для практики в машинном обучении и нейросетях:
▶️ Deep-ML — задачи по линейной алгебре, машинному и глубокому обучению. Подходит для постепенного погружения.
▶️ Tensorgym — упражнения разного уровня сложности, чтобы закрепить теорию и прокачать практику.
Идеально подойдёт, если хотите подтянуть навыки и разобраться в тонкостях ML
Превращаем текст в голос!
Устанавливаем библиотеку:
Импортируем класс
Задаём текст для озвучки:
Создаём объект
Сохраняем аудио в файл:
Воспроизводим результат в зависимости от ОС:
🔥 Запускаем скрипт и текст превращается в голос, готовый к прослушиванию.
Устанавливаем библиотеку:
pip install gTTS
Импортируем класс
gTTS модуля gtts и os:from gtts import gTTS
import os
Задаём текст для озвучки:
text = "Привет! Этот текст превращается в голос."
Создаём объект
gTTS с русским языком:tts = gTTS(text=text, lang="ru")
Сохраняем аудио в файл:
tts.save("voice.mp3")Воспроизводим результат в зависимости от ОС:
os.system("start voice.mp3") # Windows
# os.system("open voice.mp3") # macOS
# os.system("xdg-open voice.mp3") # Linux🔥 Запускаем скрипт и текст превращается в голос, готовый к прослушиванию.
❤1
Превращаем текст в баннер с помощью ✨ pyfiglet ✨
С помощью библиотеки pyfiglet на python можно преобразовать слово в ASCII-арт или в баннер для своих проектов.
Как работает эта библиотека❓
У неё есть много .fig файлов, из которых она достаёт ASCII-текст и собирает из них слово.
Установка pyfiglet:
Самый простой пример программы для преобразования текста с помощью figlet_format:
Пример вывода этой программы:
Вот ещё один пример с ручным указанием шрифта с помощью Figlet. По умолчанию standart
Вот вывод программы:
Как узнать сколько шрифтов доступно в pyfiglet❓
Вот небольшая программа для того чтобы узнать сколько шрифтов поддерживает ваша версия pyfiglet:
С помощью библиотеки pyfiglet на python можно преобразовать слово в ASCII-арт или в баннер для своих проектов.
Как работает эта библиотека❓
У неё есть много .fig файлов, из которых она достаёт ASCII-текст и собирает из них слово.
Установка pyfiglet:
pip install pyfiglet
Самый простой пример программы для преобразования текста с помощью figlet_format:
import pyfiglet
text = 'Hello'
art = pyfiglet.figlet_format(text)
print(art)
Пример вывода этой программы:
_ _ _ _
| | | | ___| | | ___
| |_| |/ _ \ | |/ _ \
| _ | __/ | | (_) |
|_| |_|\___|_|_|\___/
Вот ещё один пример с ручным указанием шрифта с помощью Figlet. По умолчанию standart
import pyfiglet
fig = pyfiglet.Figlet(font='slant')
art = fig.renderText('Hello')
print(art)
Вот вывод программы:
__ __ ____
/ / / /__ / / /___
/ /_/ / _ \/ / / __ \
/ __ / __/ / / /_/ /
/_/ /_/\___/_/_/\____/
Как узнать сколько шрифтов доступно в pyfiglet❓
Вот небольшая программа для того чтобы узнать сколько шрифтов поддерживает ваша версия pyfiglet:
import pyfiglet
# Получить список всех доступных шрифтов
all_fonts = pyfiglet.FigletFont.getFonts()
print(f"Всего доступно шрифтов: {len(all_fonts)}")
print("Все шрифты")
for i, font in enumerate(all_fonts[:len(all_fonts)], 1):
print(f"{i:2d}. {font}")
❤1❤🔥1🤩1🕊1
Модуль atexit в python 🐍
Модуль atexit позволяет запустить какие-либо функции, которые будут выполнены при нормальном завершении программы
Этот модуль не надо устанавливать так как он встроен в python 🐍
Вот пример того как использовать модуль atexit в программах:
После выполнения этой программы корректно, то функция cleanup_function() выполнится.
Вот что выведется в терминале:
Также уже зарегистрированную функцию можно отклонить регистрацию функции:
Таким образом в терминале последняя функция выводится не будет:
Также функцию atexit.register можно использовать как декоратор для функции:
Выведет в терминал:
✨ Я думаю что эта библиотека довольно полезная. Например можно после выполнении программы очищать программу от ненужных файлов, которые были созданы при выполнении программы ✨
Модуль atexit позволяет запустить какие-либо функции, которые будут выполнены при нормальном завершении программы
Этот модуль не надо устанавливать так как он встроен в python 🐍
Вот пример того как использовать модуль atexit в программах:
import atexit
def cleanup_function():
print("Выполняется очистка...")
# Регистрация функции
atexit.register(cleanup_function)
def square_number(n):
return n**2
nums = [1, 2, 3, 4, 5]
print(list(map(square_number, nums)))
После выполнения этой программы корректно, то функция cleanup_function() выполнится.
Вот что выведется в терминале:
[1, 4, 9, 16, 25]
Выполняется очистка...
Также уже зарегистрированную функцию можно отклонить регистрацию функции:
import atexit
def cleanup_function():
print("Выполняется очистка...")
# Регистрация функции
atexit.register(cleanup_function)
def square_number(n):
return n**2
nums = [1, 2, 3, 4, 5]
print(list(map(square_number, nums)))
#Отклонение регистрации функции
atexit.unregister(cleanup_function)
Таким образом в терминале последняя функция выводится не будет:
[1, 4, 9, 16, 25]
Также функцию atexit.register можно использовать как декоратор для функции:
import atexit
@atexit.register #Регистрация с помощью декоратора
def cleanup_function():
print("Выполняется очистка...")
def square_number(n):
return n**2
nums = [1, 2, 3, 4, 5]
print(list(map(square_number, nums)))
Выведет в терминал:
[1, 4, 9, 16, 25]
Выполняется очистка...
✨ Я думаю что эта библиотека довольно полезная. Например можно после выполнении программы очищать программу от ненужных файлов, которые были созданы при выполнении программы ✨
🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
Я пошёл зарабатывать...
Библиотека notify-py в python 🐍
С помощью этой библиотеки вы сможете получать сообщения python как от системы
Установка notify-py:
Настройка сообщения от системы:
На фото изображено как будет выглядеть сообщение от этой программы
✨ Эту библиотеку можно использовать для визуализации выполнения программы. Например при удачном выполнении программы будет выводится "Программа выполнена успешно..", а при неудачном "Программа была выполнена некорректно.." ✨
С помощью этой библиотеки вы сможете получать сообщения python как от системы
Установка notify-py:
pip install notify-py
Настройка сообщения от системы:
from notifypy import Notice
notification = Notice() #создаём объект сообщение
notification.title = 'Готово' #Ставим название сообщение
notification.message = 'Скрипт выполнен...' #Указываем текст сообщения
notification.send() #отправляем сообщение
На фото изображено как будет выглядеть сообщение от этой программы
✨ Эту библиотеку можно использовать для визуализации выполнения программы. Например при удачном выполнении программы будет выводится "Программа выполнена успешно..", а при неудачном "Программа была выполнена некорректно.." ✨
Моржовый оператор в python 🐍
Этот оператор позволяет присваивать значение переменной внутри выражения. Он появился в Python 3.8
Например, выражение без моржового оператора:
Тот же код с использованием моржового оператора:
Пример с использованием циклов.
1️⃣ пример:
2️⃣ пример:
✨ Этот оператор при правильном использовании сделает ваш код чище и меньше ✨
Этот оператор позволяет присваивать значение переменной внутри выражения. Он появился в Python 3.8
Например, выражение без моржового оператора:
user_id = 1
if user_id == 1:
print(user_id)
Тот же код с использованием моржового оператора:
if (user_id := 1) == 1:
print(user_id)
Пример с использованием циклов.
1️⃣ пример:
for num in (nums := [1, 2, 3, 4, 5]).copy():
nums.append(num**2)
nums.pop(0)
print(nums)
2️⃣ пример:
nums = [1, 2, 2, 3, 2, 28, 19, 2]
while (num := 2) in nums:
print(nums)
nums.pop(0)
✨ Этот оператор при правильном использовании сделает ваш код чище и меньше ✨
Детекция лиц на изображении в python 🐍
RetinaFace - библиотека для обнаружения лиц на изображении. Она определяет лицо по 5 ключевым точкам (landmarks) - это нос, правый глаз, левый глаз, правый уголок рта и левый уголок рта.
С помощью этой библиотеки можно определять сколько человек изображено на изображении (видео).
⚡️ Установка ⚡️:
Какие интересные проекты можно сделать с помощью этой библиотеки:
1️⃣. Сколько лиц на изображении в тг боте (или без бота)
2️⃣. Сколько лиц на видео в реальном времени (с помощью cv2)
3️⃣. Определение настроения (подставлять смайлик по выражению лица 😊) с помощью ключевых точек (landmarks)
✨ С помощью этой библиотеки можно работать с компьютерным зрением. Работает библиотека стабильно на версии Python 3.8 ✨
RetinaFace - библиотека для обнаружения лиц на изображении. Она определяет лицо по 5 ключевым точкам (landmarks) - это нос, правый глаз, левый глаз, правый уголок рта и левый уголок рта.
С помощью этой библиотеки можно определять сколько человек изображено на изображении (видео).
⚡️ Установка ⚡️:
pip install retina-face
Какие интересные проекты можно сделать с помощью этой библиотеки:
1️⃣. Сколько лиц на изображении в тг боте (или без бота)
2️⃣. Сколько лиц на видео в реальном времени (с помощью cv2)
3️⃣. Определение настроения (подставлять смайлик по выражению лица 😊) с помощью ключевых точек (landmarks)
✨ С помощью этой библиотеки можно работать с компьютерным зрением. Работает библиотека стабильно на версии Python 3.8 ✨
🤩1