Вариант 1589980218.
Какие встроенные функции служат для работы с атрибутами объекта?
Как называется отношение, которое имеют следующие два класса:
class A(type): def __init__(cls, name, bases, dict): return super(A, cls).__init__(cls, name, bases, dict) B = A("B", (), {})
Что делает следующая программа?
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()
Что можно узнать с помощью регулярного выражения r'([01]+)\1\1'?
Начало определения функции «f» выглядит так:
def f(a, b, c=None, d="0"):
Какие из следующих вариантов вызова приведут к ошибке на этапе присваивания фактических параметров формальным?
Какие из перечисленных функций имеют побочные эффекты:
lst = [] def A(l, x): return lst + [x] def B(l, x): lst.append(x) return lst def C(l, x): return lst.count(x)
Получен новый пакет (в виде исходных кодов) для Python. Какова рекомендуемая процедура установки нового модуля, если известно, что он использует «distutils»?
Чему будет равно значение следующего выражения:
import numpy as np print(np.shape(np.array([[1, 2], [3, 4], [5, 6]])))
Может ли возникнуть 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_C.release() res_B.release() res_A.release() def proc2(): res_A.acquire() res_B.acquire() res_C.acquire() # ... res_C.release() 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()
Имеется следующий генератор для слияния двух отсортированных последовательностей:
def merge(a1, a2): a1 = list(a1) a2 = list(a2) while a1 or a2: if a1 and (not a2 or a1[0] < a2[0]): r = a1 else: r = a2 yield r[0] del r[0]
Какие ошибки или особенности имеет эта программа?