Вариант 737949650.
Какие встроенные функции возвращают в качестве значения словарь (или подобный объект)?
Может ли возникнуть deadlock в следующей программе:
import threading res_A = threading.Lock() res_B = threading.Lock() res_C = threading.Lock() def proc1(): res_A.acquire(); res_B.acquire(); res_C.acquire() # ... res_B.release(); res_C.release(); res_A.release() def proc2(): res_A.acquire(); res_B.acquire(); res_C.acquire() # ... res_C.release(); res_B.release(); res_A.release() def proc3(): res_A.acquire(); res_B.acquire(); res_C.acquire() # ... res_A.release(); res_B.release(); res_C.release() p1 = threading.Thread(target=proc1, name="t1") p2 = threading.Thread(target=proc2, name="t2") p3 = threading.Thread(target=proc3, name="t3") p1.start(); p2.start(); p3.start() p1.join(); p2.join(); p3.join();
Имеются следующие определения:
def m1(self): print("m1") class M: def m2(self): print("m2") m = M()
Какой из фрагментов кода содержит ошибки?
Укажите набор атрибутов, которые считаются общедоступными, для экземпляров следующего класса:
class Example: 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
В каких местах допущены ошибки в генераторном выражении, выдающем список координат полей шахматной доски?
(j+str(i) for i in range(1, 9) for j in "abcdefgh")
Как называется отношение, которое имеют следующие два класса:
class A(type): def __init__(cls, name, bases, dict): return super(A, cls).__init__(cls, name, bases, dict) B = A("B", (), {})
Какого типа значение получится в результате вычисления следующего выражения:
[ " "]
Имеется массив c, для которого shape(c) равна (2, 2, 2).
Какие из приведенных ниже операций получения среза вызовут ошибку?
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()
Что делает следующая программа?
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()