class Test:
a = ''
t1 = Test()
print(t1.a is Test.a) # True. t1.a ссылается на тот же объект, что и Test.a
t1.a = 'bar' # строки в питоне не изменяемы - мы заменяем объект, а не изменяем его!
print(t1.a is Test.a) # False. Теперь t1.a ссылается на другой объект.
type(something) == sometype
!gen = (x < 0 for x in some_list)
gen = [x < 0 for x in some_list]
то это уже генератор списка. Он сделает обычный список, каждый элемент которого рассчитан на основании x в some_list. Как следствие, все элементы будут сразу рассчитаны и сохранены в памяти, но зато итерироваться по этому списку можно будет сколько угодно раз.src[:,:,2]
red_channel = src[:,:,2]
Я в своем коде использую несколько функций
SELECT last_insert_rowid();