IT берлога фидрина
76 subscribers
32 photos
1 link
IT посты на абсолютно разные тематики, а также рассказы о попытках фидрина стать айтишником

t.me/python_chat_fidry - python чат по разным тематикам
t.me/fidryyyyy - личный канал
Download Telegram
Что выведет код?
Anonymous Quiz
45%
False
40%
True
15%
Ошибка
1
Потихоньку возвращаюсь в алгоритмический запой после долгого восстановления💪😎
Please open Telegram to view this post
VIEW IN TELEGRAM
Я в ахере какие есть конкретные шарлатаны в айтишке. В целом это было понятно. Но сука.. я как только начинал путь смотрел этого чувака, думал "ой как много интересных слов непонятных", в итоге очередной мошенник. Если хотите от души посмеяться, то можете глянуть видос с разоблачением ( 2 скрин ), и очень смешной видос с разбором его курса по C++ ( 3 скрин ). В общем если кого то смотрите, то не надо воспринимать его информацию как 100% правдивую, а лучше вообще проверять компетентность человека😐
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
4
Что выведет код?
Anonymous Quiz
30%
1 2 3
30%
1 1 1
5%
3 3 3
35%
Ошибка
1
Какими будут скорости выполнения функций? (приблизительно)
Anonymous Quiz
33%
Равными
44%
time_one > time_two
22%
time_one < time_two
WeakRef

Сегодня поговорим об интересной теме: сильные и слабые ссылки.

Как мы знаем, в Python есть garbage collector, который удаляет объект при отсутствии ссылок на него:

a = 1
b = a
del a
# объект 1 всё ещё доступен, так как есть ссылка b


Это удобно: нам не нужно следить за памятью, GC сам удалит объект, когда это будет нужно.
Но может возникнуть такая ситуация:

cache = {}
class A: pass
a = A()
cache[a] = "Экземпляр класса A"

# объект a больше не доступен
del a
print(cache) # {'<__main__.A object at ...>': 'Экземпляр класса A'}

То есть кеш после удаления ссылки всё ещё хранит ненужные данные.
Это опасно: память тратится зря, данные становятся неактуальными.

Здесь может помочь WeakKeyDictionary:

from weakref import WeakKeyDictionary

a = A()
new_cache = WeakKeyDictionary()
new_cache[a] = "Экземпляр класса A"

# удаляем ссылку на объект -> запись удаляется автоматически
del a
print(dict(new_cache)) # {}


Слабые ссылки из библиотеки weakref удаляются при отсутствии жестких ссылок (под жесткими понимается обычное присваивание переменной через =).
Таким образом, weakref помогает автоматически очищать кеш и хранить только актуальные данные.

Также с помощью weakref можно хранить просто слабые ссылки на объекты:

from weakref import ref

a = A()
r = ref(a)
print(r()) # <__main__.A object at 0x0000019675A39310>

del a
print(r()) # None


❗️Вывод:
Слабые ссылки позволяют хранить объекты без продления их жизни, что полезно для кешей, наблюдателей и других структур, где важна автоматическая очистка объектов, когда на них больше нет обычных ссылок.
1
Последние дни занимаюсь нефорскими вещами🥸 Посоветуйте пожалуйста хорошие курсики по React🙏
1
Что выведет код?
Anonymous Quiz
30%
1
55%
2
15%
Ошибка
Хочу начать делать серию образовательных видосов по питончику на ютуб. Какие темы вы бы хотели видеть?
3
Что выведет код?
Anonymous Quiz
21%
0 0 0
47%
0 1 2
11%
2 2 2
21%
Ошибка
Готовится что-то.. Решил записать разговорно познавательный видос. Думаю примерно через недельку выйдет.
После него начну делать серию видосов по теме асинхронности, но в первом видео затрону еще многопоточность, многопроцессорность
22
Ищем в команду.
специалиста по сборке сайтов на конструкторах, а также фронтенд-разработчика

Работа с фокусом на проекты для европейского рынка.

Если есть интерес: пишите в личные сообщения с кратким опытом и примерами работ.

Не стесняемся @AndreyWay21