Что выдаст код выше?
Anonymous Quiz
26%
[1, 2, 3]
53%
[1, 2, 3, 4]
11%
[4, 1, 2, 3]
8%
Ошибка
3%
Не знаю
👍6❤1
Python Hub - сборище Питонистов
Photo
Разбор 😎
В Python списки — это изменяемые объекты. Когда мы присваиваем y = x, переменная y начинает ссылаться на тот же объект в памяти, что и x.
Поэтому любые изменения, сделанные через y, отразятся и на x. В данном случае вызов y.append(4) добавляет элемент 4 в конец списка, на который ссылаются обе переменные.
Таким образом, вывод будет [1, 2, 3, 4].
Поэтому любые изменения, сделанные через y, отразятся и на x. В данном случае вызов y.append(4) добавляет элемент 4 в конец списка, на который ссылаются обе переменные.
Таким образом, вывод будет [1, 2, 3, 4].
👍3❤1
❤2👍2
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