Вариант 2048966893.
Что является результатом применения функции «enumerate()» к последовательности «s»?
В каких точках программы необходимо выполнять acquire() и release() замка Z, чтобы функция f могла правильно работать в многопоточном приложении? (Как обычно, нужно минимизировать общее время, на которое запирается замок)
def f(x, y, z): global d # 1 d[(x, y)] = z # 2 res = len(d) # 3 return res
Что произойдет со старыми объектами модуля, используемыми в программе, при его перезагрузке по reload() (после изменения на диске):
import mdl a = mdl.a b = mdl.b() reload(mdl)
Для чего в регулярном выражении используется "\w"?
Что можно узнать с помощью регулярного выражения r'([01]+)\1\1'?
Что делает следующая программа?
import threading ready = threading.Event() def proc(): ready.wait() print("Done!") for i in range(5): p = threading.Thread(target=proc) p.start() print("Prepare!") ready.set()
Какие встроенные функции возвращают в качестве значения словарь (или подобный объект)?
Что будет выведено следующей программой?
S = 0 for i in range(1, 10): if i % 2 == 0: S = S + i print(S)
Укажите набор атрибутов, которые считаются приватными, для экземпляров следующего класса:
class Ex: def __init__(self, x, y): xy = x, y self.position = xy self._length = self.__len(x, y) def __len(self, x, y): return abs(x) + abs(y) def getlen(self): return self._length
Может ли возникнуть 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_A.acquire() res_B.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() p2.join()