Как создать свой сайт на 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
[*] pr0gramm1ng basics
Photo
Сделал небольшой код на python 🐍 с использованием библиотеки RetinaFace 😶
Вот сам код:
В коде есть небольшое объяснение, но немного поясню сам. Метод detect_faces возвращает список словарей:
Здесь score - это уверенность (насколько модель уверена, что на изображении есть лицо), facial_area - координаты ограничивающего прямоугольника: [x1, y1, x2, y2], где: (x1, y1) — верхний левый угол, (x2, y2) — нижний правый угол, landmarks - ключевые точки (нос, правый уголок рта, левый уголок рта, правый глаз, левый глаз).
⚡️ Что делает программа: указываешь путь к файлу (обязательно изображение) и программа на этом изображении ищет лица и прикрепляет к ним квадраты. На фотографиях есть изображение до обработки и после ⚡️
Вот сам код:
from retinaface import RetinaFace
import cv2
path_to_file = 'image_1.png' # путь к файлу на вашем пк
image = cv2.imread(path_to_file) # открываем файл
if image is None:
raise FileNotFoundError(f"Не удалось загрузить изображение: {image}")
resp = RetinaFace.detect_faces('image_1.png') # считываем лица
if isinstance(resp, dict): # есть ли лица на фото
for face_id, face_info in resp.items(): # из словаря достаёём значения для построения квадрата на лицо
facial_area = face_info["facial_area"]
x1, y1, x2, y2 = facial_area
cv2.rectangle(image, (x1, y1), (x2, y2), (255, 0, 0), 2) # отображаем квадрат
cv2.imwrite("output_image_path.png", image) # сохраняем
print(f"Изображение с обнаруженными лицами сохранено как: output_image_path.png")
В коде есть небольшое объяснение, но немного поясню сам. Метод detect_faces возвращает список словарей:
{
"face_1": {
"score": 0.999,
"facial_area": [x1, y1, x2, y2],
"landmarks": {
"left_eye": [x, y],
"right_eye": [x, y],
"nose": [x, y],
"mouth_left": [x, y],
"mouth_right": [x, y]
}
},
"face_2": {
"score": 0.987,
"facial_area": [x1, y1, x2, y2],
"landmarks": { ... }
},
...
}Здесь score - это уверенность (насколько модель уверена, что на изображении есть лицо), facial_area - координаты ограничивающего прямоугольника: [x1, y1, x2, y2], где: (x1, y1) — верхний левый угол, (x2, y2) — нижний правый угол, landmarks - ключевые точки (нос, правый уголок рта, левый уголок рта, правый глаз, левый глаз).
⚡️ Что делает программа: указываешь путь к файлу (обязательно изображение) и программа на этом изображении ищет лица и прикрепляет к ним квадраты. На фотографиях есть изображение до обработки и после ⚡️
🔥1
[*] pr0gramm1ng basics
Photo
Библиотека Tensorflow на python 🐍
Tensorflow - мощный фреймворк с открытым исходным кодом для машинного обучения и разработки нейросетей, разработанный компанией Google.
Установка:
Также в этой библиотеке есть встроенный API Keras. Он полностью интегрирован в Tensorflow.
🤖 Пример нейросети на Tensorflow:
⚡ Для каких задач чаще всего используется Tensorflow:
1. Компьютерное зрение (Computer Vision). Например библиотека Mediapipe.
2. Обработка естественного языка. Например, определение тональности (NLTK + Tensorflow), машинный перевод (Tensorflow + Transformers (Hugging Face)), генерация текста (чат-боты)
3. Обработка звука и речи (Tensorflow Audio или Tensorflow + Librosa)
🔥 Щас на этой библиотеке я работаю над созданием своей нейросети. Она будет распознавать цифры, который я ей написал. Вчера 5 часов делал датасет и переобучил нейросеть. Сегодня придётся новый делать, поэтому не знаю когда дам её код. Стабильно библиотека работает на версии Python 3.8 🔥
Tensorflow - мощный фреймворк с открытым исходным кодом для машинного обучения и разработки нейросетей, разработанный компанией Google.
Установка:
pip install tensorflow
Также в этой библиотеке есть встроенный API Keras. Он полностью интегрирован в Tensorflow.
🤖 Пример нейросети на Tensorflow:
import tensorflow as tf #импортируем
# 1. Загрузка данных (встроенный датасет)
mnist = tf.keras.datasets.mnist
(x_train, y_train), (x_test, y_test) = mnist.load_data()
x_train, x_test = x_train / 255.0, x_test / 255.0 # Нормализация
# 2. Построение модели
model = tf.keras.models.Sequential([
tf.keras.layers.Flatten(input_shape=(28, 28)), # Сглаживаем изображение 28x28 в вектор
tf.keras.layers.Dense(128, activation='relu'), # Полносвязный слой на 128 нейронов
tf.keras.layers.Dropout(0.2), # Регуляризация для борьбы с переобучением
tf.keras.layers.Dense(10) # Выходной слой на 10 классов (цифры 0-9)
])
# 3. Компиляция модели
model.compile(optimizer='adam',
loss=tf.keras.losses.SparseCategoricalCrossentropy(from_logits=True),
metrics=['accuracy'])
# 4. Обучение модели
model.fit(x_train, y_train, epochs=5)
# 5. Оценка качества
model.evaluate(x_test, y_test, verbose=2)
⚡ Для каких задач чаще всего используется Tensorflow:
1. Компьютерное зрение (Computer Vision). Например библиотека Mediapipe.
2. Обработка естественного языка. Например, определение тональности (NLTK + Tensorflow), машинный перевод (Tensorflow + Transformers (Hugging Face)), генерация текста (чат-боты)
3. Обработка звука и речи (Tensorflow Audio или Tensorflow + Librosa)
🔥 Щас на этой библиотеке я работаю над созданием своей нейросети. Она будет распознавать цифры, который я ей написал. Вчера 5 часов делал датасет и переобучил нейросеть. Сегодня придётся новый делать, поэтому не знаю когда дам её код. Стабильно библиотека работает на версии Python 3.8 🔥
TensorFlow
An end-to-end open source machine learning platform for everyone. Discover TensorFlow's flexible ecosystem of tools, libraries and community resources.
MyFirstNeiro.rar
2.8 MB
Сделал свою нейросеть на python 🐍 при помощи библиотеки TensorFlow 🔥
Скрипты писал меньше часа, а саму нейросеть обучал почти 2 дня (методом проб и ошибок).
Так вот, что она делает?
🤖 Моя нейросеть умеет распознавать цифры 0-9. Обучена на данных MNIST (также сделал скрипты для создания своего датасета для моей нейросети).
Зависимости:
- TensorFlow (версия: 2.13.0)
- NumPy (версия: 1.24.3)
- Pillow (версия: 10.4.0)
- Pygame (версия: 2.6.1)
Нейросеть зовут - Овощ 🍆 (ну просто она реально овощ). Версия Python 3.8 ✨
GitHub репозиторий: my_first_neiro
Скрипты писал меньше часа, а саму нейросеть обучал почти 2 дня (методом проб и ошибок).
Так вот, что она делает?
🤖 Моя нейросеть умеет распознавать цифры 0-9. Обучена на данных MNIST (также сделал скрипты для создания своего датасета для моей нейросети).
Зависимости:
- TensorFlow (версия: 2.13.0)
- NumPy (версия: 1.24.3)
- Pillow (версия: 10.4.0)
- Pygame (версия: 2.6.1)
Нейросеть зовут - Овощ 🍆 (ну просто она реально овощ). Версия Python 3.8 ✨
GitHub репозиторий: my_first_neiro
👍1
Библиотека PyUSB в python 🐍
Это библиотека нужна для работы с USB устройствами (не всеми). Она является низкоуровневой и самой распространенной библиотекой для работы с USB. Эта библиотека поддерживается на Windows, Linux и MacOs (кроссплатформенная).
Пример кода на PyUSB:
Что такое PID и VID?
PID (Product id) - это идентификатор продукта. Он придумывается производителем для какого-либо устройства
VID (Vendor id) - это идентификатор производителя. Он назначается организацией USB-IF (официальная ассоциация USB)
👉 Вместе VID и PID полностью идентифицируют конкретную модель устройства
Вот пример кода для того чтобы узнать VID, PID и название продукта (product):
✨ Есть конечно и библиотеки получше, чем PyUSB (например, hidapi (или hid), pyserial), но пока что решил рассказать про неё ✨
Документация 👉 PyUSB 👈
Это библиотека нужна для работы с USB устройствами (не всеми). Она является низкоуровневой и самой распространенной библиотекой для работы с USB. Эта библиотека поддерживается на Windows, Linux и MacOs (кроссплатформенная).
Пример кода на PyUSB:
import usb.core
import usb.util
# Найти устройство по VID и PID
dev = usb.core.find(idVendor=0x1234, idProduct=0x5678)
if dev is None:
raise ValueError("Устройство не найдено")
# Установить конфигурацию
dev.set_configuration()
# Отправить данные
dev.write(1, b'Hello USB')
Что такое PID и VID?
PID (Product id) - это идентификатор продукта. Он придумывается производителем для какого-либо устройства
VID (Vendor id) - это идентификатор производителя. Он назначается организацией USB-IF (официальная ассоциация USB)
👉 Вместе VID и PID полностью идентифицируют конкретную модель устройства
Вот пример кода для того чтобы узнать VID, PID и название продукта (product):
import usb.core
for dev in usb.core.find(find_all=True):
print(hex(dev.idVendor), hex(dev.idProduct), dev.product)
✨ Есть конечно и библиотеки получше, чем PyUSB (например, hidapi (или hid), pyserial), но пока что решил рассказать про неё ✨
Документация 👉 PyUSB 👈