Python Hub - сборище Питонистов
1.71K subscribers
657 photos
1 video
37 files
278 links
Уголок счастья для любого питониста.

Сотрудничество или заказы: @leshunist

https://shcoder.dev - студия разработки ShcoderDevelopment

https://t.me/pythonhub_chat - чат
Download Telegram
Python Hub - сборище Питонистов
Photo
Разбор 👨‍💻

Статья о миксинах могла вам помочь при решении задачи.
Создаем класс миксин, в котором реализуем метод добавления к передаваемому слову приставки flex.

Далее создаем два класса с одинаковым методом output, однако внимательные заметят, один из них возвращает результат текстовый, а второй принтует сразу в консоль.

Ну и при инициализации списка, мы создаем в нем объект, для которого сразу вызываем метод output —> один результат выводит и возвращает в список None, а другое просто возвращает текст в список.

В консоли будет только flex Python
👍2
❗️Flask WTForms: Что это такое и как использовать?

🔻 Что такое Flask WTForms?

Flask WTForms - это расширение для Flask, которое интегрирует популярную библиотеку WTForms в приложения Flask. WTForms - это гибкая библиотека валидации и отображения форм для разработки веб-приложений на языке Python. Она предоставляет простой и интуитивно понятный способ создания HTML-форм и валидации пользовательского ввода. Используя Flask WTForms, вы можете легко определить свои формы в виде классов Python и отображать их в ваших шаблонах Flask.

🔻 Как использовать Flask WTForms

Чтобы начать использовать Flask WTForms в вашем приложении Flask, вам сначала необходимо установить его с помощью pip. Вы можете сделать это, запустив следующую команду:

pip install Flask-WTF


После установки Flask WTForms вам нужно импортировать его в ваше приложение Flask. В вашем файле Python добавьте следующую строку:

from flask_wtf import FlaskForm


Теперь вы можете определить свои формы как подклассы FlaskForm. Каждый класс формы будет представлять определенную форму в вашем приложении. Вы можете определить поля в вашей форме, используя различные классы полей, предоставленные Flask WTForms, такие как StringField, IntegerField, BooleanField и другие.

После определения формы вы можете отобразить ее в вашем шаблоне Flask, используя объект form.

Чтобы обрабатывать отправку формы, вам необходимо определить маршрут в вашем приложении Flask, который будет обрабатывать POST-запросы. В этом маршруте вы можете использовать объект request для доступа к данным формы и валидировать их с помощью функции form.validate_on_submit(). Если данные формы являются допустимыми, вы можете их обработать и выполнить необходимые действия.
👍3
❗️ Шифрование паролей и другой информации в Python


Шифрование позволяет защитить конфиденциальные данные, такие как пароли, от несанкционированного доступа.

🔻Использование модуля hashlib

Один из способов шифрования данных в Python - использование модуля hashlib. Модуль hashlib предоставляет ряд алгоритмов хеширования, таких как SHA-256 и MD5. Хеширование - это процесс преобразования исходных данных в фиксированную длину числового значения, известного как хеш. Хеширование полезно для сохранения паролей и другой информации в безопасной форме, поскольку хеш невозможно обратно преобразовать в оригинальные данные. Вот пример кода, демонстрирующий использование модуля hashlib для шифрования пароля:

import hashlib

password = "mysecretpassword"
hashed_password = hashlib.sha256(password.encode()).hexdigest()

print("Шифрованный пароль:", hashed_password)
👍3🔥1
Python Hub - сборище Питонистов
Photo
Разбор 👨‍💻

Есть список. Ну а дальше циклы в списковых выражениях.
Первое - создание squared_numbers, где мы определяем четные числа и нечетные. Четные возводим в квадрат (x **2) и заносим обратно.

Получаем тут [1, 4, 3, 16, 5]

Ну а дальше просто создаем список filtered_numbers, где числа будут больше 5. То есть у нас это просто число 16.
Помним, что оно будет в списке.

Отсюда и ответ: [16]
👍2
❗️Библиотеки для создания игр на Python


🔻 Pygame

Pygame - одна из самых популярных библиотек для создания игр на Python. Она предоставляет множество инструментов и функций, которые помогают разработчикам создавать 2D игры. Pygame обладает простым и понятным API, что делает ее отличным выбором для начинающих разработчиков. Она также поддерживает работу с звуком, анимацией и управлением вводом.

🔻 Arcade

Arcade - еще одна библиотека, которая предоставляет возможности для создания игр на Python. Она разработана с акцентом на создание 2D игр и имеет простой и интуитивно понятный интерфейс. Arcade предлагает широкий набор инструментов, включая графику, анимацию, физику и звук.

🔻 Panda3D

Panda3D - библиотека, которая предоставляет возможности для создания как 2D, так и 3D игр на Python. Она имеет мощный набор инструментов и функций, позволяющих разработчикам создавать высококачественные игры.
👍4
🔔Есть любители автотематики? Шашки в жизни или в игре? 🚘🚔

📹 Вторая часть гоночек или же шашек на Pygame. Добавили кнопки рестарта, систему поломок, меню и счет 📹
🔥 Смотрите, оставляйте отзыв в комментариях 🔥

Стоит ли делать продолжение игры дальше, зависит только от вас)

https://youtu.be/2uctvdLEftE
👍4
shcoder.zip
3.4 MB
Zip архив с исходниками игры версии 2.0😊
Может кому-то пригодится
👍5
На какой либе пишете телеграм ботов? (если пишете) [Несколько вариантов можно]
Anonymous Poll
58%
aiogram
40%
telebot
6%
pyrogram
8%
telethon
19%
другое
👍4
Решил сравнить ответы Chat GPT 3.5 и Bard от гугла. 🤖

Какой ИИ ответил лучше
👍4
❗️Разница в SQLAlchemy и Flask-SQLAlchemy

🔻 SQLAlchemy

SQLAlchemy - это библиотека для работы с базами данных в языке Python. Она предоставляет объектно-реляционный маппер (ORM), который позволяет работать с базой данных, используя объекты и методы, а не прямые SQL-запросы. SQLAlchemy предоставляет широкий набор функций и возможностей для работы с различными СУБД, включая создание таблиц, выполнение запросов и управление транзакциями.

🔻 Flask-SQLAlchemy

Flask-SQLAlchemy - это расширение для фреймворка Flask, которое интегрирует SQLAlchemy в приложения Flask. Оно предоставляет удобный способ настройки и использования SQLAlchemy в проекте на Flask. Flask-SQLAlchemy упрощает создание моделей базы данных, связывание их с таблицами и выполнение запросов. Оно также автоматически управляет соединениями с базой данных и контекстом сеанса.

🆚 Различия между SQLAlchemy и Flask-SQLAlchemy

1. Уровень абстракции: Одно из основных различий между SQLAlchemy и Flask-SQLAlchemy заключается в уровне абстракции. SQLAlchemy предоставляет более низкий уровень абстракции и позволяет более гибко управлять базой данных, в то время как Flask-SQLAlchemy предоставляет более высокий уровень абстракции и упрощает взаимодействие с базой данных для проектов на Flask.

2. Интеграция с Flask: Flask-SQLAlchemy предоставляет дополнительную интеграцию с фреймворком Flask. Оно упрощает создание моделей базы данных и поддерживает автоматическую генерацию таблиц на основе этих моделей. SQLAlchemy, с другой стороны, не имеет прямой интеграции с Flask и требует дополнительной настройки для работы в проекте на Flask.

3. Управление соединениями и контекстом сеанса: Flask-SQLAlchemy автоматически управляет соединениями с базой данных и контекстом сеанса, что упрощает работу с базой данных в приложении Flask. SQLAlchemy требует явного управления соединениями и контекстом сеанса.
👍4
❗️ Главные отличия Python2 от Python3


🔻 Поддержка

Одним из крупных отличий Python2 и Python3 является поддержка. Python2 перестал получать активные обновления и исправления ошибок с 2020 года, в то время как Python3 активно разрабатывается и поддерживается сообществом.

🔻 Синтаксис и функциональность

Еще одно важное отличие между Python2 и Python3 - это изменения в синтаксисе и функциональности. В Python3 были внесены некоторые изменения, чтобы сделать язык более последовательным и интуитивно понятным. Некоторые из этих изменений включают:

- Использование функции print() вместо оператора print. В Python2 можно было использовать print без скобок, но в Python3 требуется использование скобок, чтобы вызвать функцию print().
- Python3 включает новые возможности, такие как асинхронное программирование, улучшенная обработка исключений и расширенная поддержка для работы с байтами.

🔻 Библиотеки и совместимость

Третье важное отличие между Python2 и Python3 заключается в библиотеках и совместимости.
👍3
Python Hub - сборище Питонистов
Photo
Разбор 👨‍💻

Создаем объект класса Person, куда передаем пустое имя. Просто пустые кавычки. Далее мы выводим это имя - в ответ пустота. Ну а далее через сеттер устанавливаем значение свойству name. У нас там внутри есть проверка на пустоту, однако мы уже передаем имя "Петр Петров". Все проходит успешно, ну и далее мы это имя выводим.
👍2
⁉️ Зачем нужен файл __init__ в папке Python проекта?


🔻Организация модулей

Один из основных назначений файла __init__.py - это сигнализировать Python, что папка является модулем. В этом файле можно определить переменные, функции или классы, которые будут доступны извне. Это позволяет организовать код внутри папки и создавать логические блоки функциональности. Благодаря файлу __init__.py вы можете импортировать модули из папки, используя точечную нотацию, например: "import folder.module".

🔻 Инициализация пакетов

В Python папки с файлами __init__.pyназываются пакетами. Файл __init__.py в пакете выполняет роль инициализации пакета. Это означает, что код в этом файле будет выполнен при импорте пакета. Это может быть полезно, когда вам нужно выполнить какую-то предварительную настройку или импортировать дополнительные модули, необходимые для работы пакета. Такой подход позволяет обеспечить последовательность инициализации и избежать ошибок при использовании пакета.
👍4
❗️ Оператор in в Python


Оператор in в Python используется для проверки вхождения элемента в последовательность. Эта последовательность может быть строкой, списком, кортежем или даже словарем. Синтаксис оператора in выглядит следующим образом: элемент in последовательность. Оператор in возвращает логическое значение True, если элемент присутствует в последовательности, и False, если элемент отсутствует.

Например, давайте рассмотрим следующий пример:

fruits = ['apple', 'banana', 'orange']
if 'apple' in fruits:
print("Я люблю яблоки!")


В этом примере мы создали список фруктов и проверяем, присутствует ли в нем элемент 'apple'. Если элемент 'apple' присутствует, то выводится сообщение "Я люблю яблоки!".

text = "Python is a powerful programming language"
if "Python" in text:
print("Python найден!")


В этом примере мы проверяем, содержит ли строка "Python is a powerful programming language" подстроку "Python". Если подстрока "Python" присутствует, то выводится сообщение "Python найден!".
👍3