Вариант 654668407.
Как называется отношение, которое имеют следующие два класса:
class A(type): def __init__(cls, name, bases, dict): return super(A, cls).__init__(cls, name, bases, dict) B = A("B", (), {})
Сокрытие информации о внутреннем устройстве объекта, при котором вся работа с объектом ведется только через общедоступный интерфейс называется
Что произойдет со старыми объектами модуля, используемыми в программе, при его перезагрузке по reload() (после изменения на диске):
import mdl a = mdl.a b = mdl.b() reload(mdl)
Может ли возникнуть deadlock в следующей программе:
import threading res_A = threading.Lock() res_B = threading.Lock() def proc1(): res_A.acquire() res_B.acquire() # ... res_B.release() res_A.release() def proc2(): res_B.acquire() res_A.acquire() # ... res_B.release() res_A.release() p1 = threading.Thread(target=proc1, name="t1") p2 = threading.Thread(target=proc2, name="t2") p1.start() p2.start() p1.join()
Что будет выведено следующей программой?
a = "A" b = "B" a, b = b + a print(a + b)
В каких точках программы необходимо выполнять acquire() и release() замка Z, чтобы функция f могла правильно работать в многопоточном приложении? (Как обычно, нужно минимизировать общее время, на которое запирается замок)
def f(x, y, z): global d # 1 d[(x, y)] = z # 2 res = len(d) # 3 return res
Сколько элементов будет содержать словарь D (то есть, чему будет равно len(D)) после выполнения следующего кода:
D = {} D[1], D[2], D[3] = "ABB" D[0], D[1] = "AB"
Какие из перечисленных функций имеют побочные эффекты:
def A(lst): return lambda x: lst + [x] def B(x): return lambda lst: lst + [x] def C(x, cache={}): return cache.setdefault(x, lambda lst: lst + [x])
Какое из приведенных ниже регулярных выражений некорректно?
Какие встроенные функции возвращают в качестве значения словарь (или подобный объект)?