Python Hub - сборище Питонистов
Photo
Разбор 😎
Здесь мы имеем дело с объектами и ссылками в Python. Когда создается объект класса A (a = A()), переменная a ссылается на этот объект. Затем переменной b присваивается ссылка на тот же объект (b = a). Это означает, что a и b ссылаются на один и тот же объект в памяти.
Когда вызывается метод update через переменную b, он изменяет атрибут x этого объекта, увеличивая его значение на 5. Поскольку a и b ссылаются на один и тот же объект, изменение видно через обе переменные. Таким образом, после выполнения b.update(5) значение x становится равным 15, и вывод будет 15 15.
Здесь мы имеем дело с объектами и ссылками в Python. Когда создается объект класса A (a = A()), переменная a ссылается на этот объект. Затем переменной b присваивается ссылка на тот же объект (b = a). Это означает, что a и b ссылаются на один и тот же объект в памяти.
Когда вызывается метод update через переменную b, он изменяет атрибут x этого объекта, увеличивая его значение на 5. Поскольку a и b ссылаются на один и тот же объект, изменение видно через обе переменные. Таким образом, после выполнения b.update(5) значение x становится равным 15, и вывод будет 15 15.
👍5❤1
👍3❤1
Python Hub - сборище Питонистов
Photo
Мораль😎
Атрибуты класса (count) являются общими для всех экземпляров класса.
Метод __del__ вызывается автоматически, когда объект уничтожается (например, после выполнения del или когда программа завершается).
Если объект больше не имеет ссылок, он удаляется сборщиком мусора, и вызывается деструктор.
Атрибуты класса (count) являются общими для всех экземпляров класса.
Метод __del__ вызывается автоматически, когда объект уничтожается (например, после выполнения del или когда программа завершается).
Если объект больше не имеет ссылок, он удаляется сборщиком мусора, и вызывается деструктор.
👍2
Ура. Разбираемся, как компоновать виджеты во Flet.
Накидывайте идей, что еще сделать!
https://youtu.be/aJ2VYQy57jg
Накидывайте идей, что еще сделать!
https://youtu.be/aJ2VYQy57jg
YouTube
КРОССПЛАТФОРМА на Python FLET | Первое приложение и компановка виджетов | Flutter
✅В этом видео вы узнаете, как написать приложение на Flet, как скомпоновать виджеты.
✅Мы так же напишем наше первое приложение, запустим его в WEB и на DESKTOP. (это делается заменой одной строки)
🔥 Подписывайся на наш Телеграм-канал про Python 🔥
🖇 htt…
✅Мы так же напишем наше первое приложение, запустим его в WEB и на DESKTOP. (это делается заменой одной строки)
🔥 Подписывайся на наш Телеграм-канал про Python 🔥
🖇 htt…
❤2👍2
Привет, питонисты! 👋 Сегодня разберём тему, которая частенько вызывает головную боль даже у опытных разработчиков — области видимости переменных и ключевые слова global и nonlocal.
🤔 В чём суть?
Представьте, что вы пишете функцию внутри функции (да, такое бывает!), и вам нужно изменить переменную "снаружи". Без special words Python скажет: "Неа, не получится!" 😅
🎯 Как это работает?
x = 5 # глобальная переменная
def change_x():
global x # говорим Python, что хотим менять глобальную x
x = 10 # теперь работает!
change_x()
print(x) # выведет 10
🎈 Nonlocal:
def outer():
counter = 0 # переменная внешней функции
def inner():
nonlocal counter # хотим менять counter из outer
counter += 1 # работает!
inner()
print(counter) # выведет 1
outer()
⚡️ Важные моменты:
❌ Неправильно:
def bad_function():
print(x) # ошибка!
global x # global нужно объявлять до использования
x = 10
✅ Правильно:
def good_function():
global x
print(x) # теперь всё ок
x = 10
🛠 Полезные инструменты:
Чтобы проверить, какие переменные у вас есть:
print(globals()) # все глобальные переменные
print(locals()) # все локальные переменные
- ✨ Используйте global только когда действительно необходимо
- ✨ Nonlocal отлично подходит для счетчиков и аккумуляторов
- ✨ Всегда документируйте использование global и nonlocal в комментариях
- ✨ Старайтесь минимизировать использование глобальных переменных
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9❤1
Новый способ монетизации своих ботов без всяких ЮР. лиц, ип, ОАО, ЗАО бещеки и так далее.
https://youtu.be/SWD0LZwc_kQ
https://youtu.be/SWD0LZwc_kQ
YouTube
TELEGRAM BOT с оплатой КРИПТОВАЛЮТОЙ на Python | Crypto Bot + AIOgram
В этом видео мы разберем, как интегрировать оплату криптовалютой в вашего телеграм бота. Мы будем писать Telegram Bot используя библиотеку AIOgram на Python. Так же нам понадобится Crypto Bot и библиотека aiosend.
►Подписывайся на наш Телеграм-канал про…
►Подписывайся на наш Телеграм-канал про…
😁2❤1👍1
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
Юнит Тестирование в Python | UnitTest и PyTest
В этом видео мы разберем, как писать базовые юнит тесты в языке программирования Python. Разбирать будем на основе библиотек unittest и pytest.
►Подписывайся на наш Телеграм-канал про Python: https://t.me/pythonhub001
►Присоединяйся к нашему чату: htt…
►Подписывайся на наш Телеграм-канал про Python: https://t.me/pythonhub001
►Присоединяйся к нашему чату: htt…
👍7❤2
1110000 1101111 1110011 1110100 1100001 1110110 100111 100000 1101100 1101001 1101011 1100101
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13❤2☃1🤔1
👍8
Python Hub - сборище Питонистов
Photo
Разбор выражения
Вычисление x > y
x = 5, y = 3
x > y возвращает True.
Вычисление x > y and x:
x > y равно True, поэтому результатом and будет второй операнд — x (равно 5).
Вычисление (x > y and x) or y:
Результат (x > y and x) равен 5.
5 является "истинным" значением, поэтому оператор or возвращает первый операнд — 5.
Итоговый результат:
Значение переменной z становится равным 5, и это значение выводится на экран.
x > y and x or y👨💻
x = 5, y = 3
x > y возвращает True.
Вычисление x > y and x:
x > y равно True, поэтому результатом and будет второй операнд — x (равно 5).
Вычисление (x > y and x) or y:
Результат (x > y and x) равен 5.
5 является "истинным" значением, поэтому оператор or возвращает первый операнд — 5.
Итоговый результат:
Значение переменной z становится равным 5, и это значение выводится на экран.
👍4🤔2
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
БЕСПЛАТНЫЙ ХОСТИНГ Python САЙТА на Django | Pythonanywhere
В этом видео мы создадим сайт на Django Python и загрузим его на бесплатный хостинг pythonanywhere.
Сайт создан используя язык программирования пайтон, библиотеку джанго.
►Подписывайся на наш Телеграм-канал про Python: https://t.me/pythonhub001
►Присоединяйся…
Сайт создан используя язык программирования пайтон, библиотеку джанго.
►Подписывайся на наш Телеграм-канал про Python: https://t.me/pythonhub001
►Присоединяйся…
👍6
https://youtu.be/uDi-zYV3e1o
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
Подключить БЕСПЛАТНО любую НЕЙРОСЕТЬ в TELEGRAM БОТА | AIOgram, DeepSeek, OpenRouter
В этом видео мы создадим телеграм бота и посмотрим, как абсолютно бесплатно можно подключить к нему любую нейросеть. Бота будем разрабатывать с использованием Python и AIOgram, а в качестве нейросей используем дипсик и Qwen.
►Подписывайся на наш Телеграм…
►Подписывайся на наш Телеграм…
👍3🤔2
💾 MongoDB + Python: твой проект на стероидах
Ты всё еще хранишь данные в
Давай поговорим про MongoDB — NoSQL-базу, которая может прокачать твой Python-проект за пару строчек кода.
🔍 Зачем вообще MongoDB?
MongoDB — это документо-ориентированная база данных, где данные хранятся в формате JSON-подобных документов (BSON).
Представь, что можешь запихнуть любой Python-словарь прямо в базу, без лишних "таблиц", "схем" и всей этой SQL-бюрократии.
Идеально для:
➡️ Быстрого старта проектов
➡️ Гибких структур данных (например, если у разных пользователей — разные поля)
➡️ Прототипирования и MVP
📦 Установка и подключение
1. Установи библиотеку:
2. Простой пример подключения:
🤔 MongoDB vs SQLite vs PostgreSQL — кто победит?
🧠 Вывод:
Берешь MongoDB, если тебе нужна гибкость, динамика и хочешь двигаться быстро.
SQLite — хорош для тестов и мини-приложений.
PostgreSQL — топ для enterprise-решений, где важна строгость, связи и контроль.
📚 На заметку
* Используй ORM
* Mongo отлично себя чувствует на Heroku, Atlas и в Docker
* Можно спокойно хранить JSON, массивы, вложенные документы — и никаких JOIN'ов 😎
🎯 Итого
MongoDB + Python = 🔥 combo.
Ты всё еще хранишь данные в
SQLite
, а может, ковыряешься с PostgreSQL
? 😅Давай поговорим про MongoDB — NoSQL-базу, которая может прокачать твой Python-проект за пару строчек кода.
🔍 Зачем вообще MongoDB?
MongoDB — это документо-ориентированная база данных, где данные хранятся в формате JSON-подобных документов (BSON).
Представь, что можешь запихнуть любой Python-словарь прямо в базу, без лишних "таблиц", "схем" и всей этой SQL-бюрократии.
Идеально для:
📦 Установка и подключение
1. Установи библиотеку:
pip install pymongo
2. Простой пример подключения:
from pymongo import MongoClient
client = MongoClient("mongodb://localhost:27017/")
db = client["my_database"]
collection = db["users"]
collection.insert_one({"name": "Alice", "age": 30})
print(collection.find_one({"name": "Alice"}))
🤔 MongoDB vs SQLite vs PostgreSQL — кто победит?
| MongoDB | NoSQL | Гибкость, масштабируемость 💡 | Нет SQL, не для сложных связей |
| SQLite | SQL | Встроен, легкий, zero setup ⚙️| Не годится для больших данных |
| PostgreSQL | SQL | Мощный, строгий, надёжный 🏗 | Требует настройки и схем |
🧠 Вывод:
Берешь MongoDB, если тебе нужна гибкость, динамика и хочешь двигаться быстро.
SQLite — хорош для тестов и мини-приложений.
PostgreSQL — топ для enterprise-решений, где важна строгость, связи и контроль.
📚 На заметку
* Используй ORM
MongoEngine
для MongoDB, если хочешь больше "структуры"* Mongo отлично себя чувствует на Heroku, Atlas и в Docker
* Можно спокойно хранить JSON, массивы, вложенные документы — и никаких JOIN'ов 😎
🎯 Итого
MongoDB + Python = 🔥 combo.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6