Стали интересны бинарные операторы, но не до конца понимаю принцип их работы.
Если например выполнить команду
print( 60 & 13 )
то результат будет число 12, так как он сохранил и вывел совпадающие биты в этих числах, но если попробовать сделать так
var1 = {13}
var2= {60}
print( var1 & var2)
то результатом выполнения будет такой вывод в консоль
set()
Почему так происходит? А если попробовать сделать так
list1 = {12, 11, 60}
list2 = {11, 13, 34}
print( list1 & list2 )
то он вернет {11} - число которое имеется в обоих множествах. Как это работает?