Простой тест на знание Python — вопросы

Материал из DISCOPAL
Перейти к: навигация, поиск
12345678910
Простой тест на знание Python

Вариант 3040805828.


Ваше имя*:


Вопрос 1

Как называется отношение, которое имеют следующие два класса:

 
class A:
  def __init__(self, x):
    self._mydata = B(x)
 
class B:
  def __init__(self, x):
    self._mydata = x
 
  1.  наследование. A получается наследованием B
  2.  ассоциация. Экземпляр A содержит ссылки на экземпляры B
  3.  метакласс. A является метаклассом для B
  4.  метакласс. B является метаклассом для A

Вопрос 2

Какие встроенные функции возвращают в качестве значения словарь (или подобный объект)?

  1.  enumerate()
  2.  locs()
  3.  dir()

Вопрос 3

Начало определения функции «f» выглядит так:

def f(a, b, c=None, d="0"):

Какие из следующих вариантов вызова приведут к ошибке на этапе присваивания фактических параметров формальным?

  1.  «f(1, 2)»
  2.  «f(1, d=3)»
  3.  «f(1, 2, d=3)»
  4.  «f(1, 2, d=3, c=4)»
  5.  «f(1, 2, 3, 4)»

Вопрос 4

Что является результатом применения функции «enumerate()» к последовательности «s»?

  1.  последовательность порядковых чисел в различных форматах (арабском, римском)
  2.  кортеж из двух последовательностей: последовательность чисел от нуля до len(s) и исходная последовательность
  3.  последовательность кортежей. В каждом кортеже первый элемент — номер элемента исходной последовательности, а второй — соответствующий этому номеру член
  4.  последовательность чисел от нуля до len(s)

Вопрос 5

Какого типа значение получится в результате вычисления следующего выражения:

(" ", )
  1.  unicode (Unicode-строка)
  2.  str (строка)
  3.  tuple (кортеж)
  4.  это синтаксическая ошибка

Вопрос 6

Что будет выведено следующей программой?

A = B = 1
a = "A" * 5
b = "B" * 5
a = a + b * 5
print(a, b)
  1.  AAAAABBBBBAAAAABBBBBAAAAABBBBBAAAAABBBBBAAAAABBBBB BBBBB
  2.  AAAAABBBBBBBBBBBBBBBBBBBBBBBBB BBBBB
  3.  AAAAABBBBBAAAAABBBBBAAAAABBBBBAAAAABBBBBAAAAABBBBB, BBBBB
  4.  сообщение об ошибке в четвертой строке
  5.  30 5

Вопрос 7

Что делает следующая программа?

 
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()
 
  1.  программа создает пять дополнительных потоков, которые запускаются после выполнения ready.set() в главном потоке
  2.  программа запускает пять дополнительных потоков, печатающих "Done!" после выполнения ready.set(), то есть, после печати "Prepare!"
  3.  программа запускает пять дополнительных потоков, один из которых печатает "Done!" после выполнения ready.set(), а остальные ждут следующего ready.set()
  4.  программа запускает пять дополнительных потоков, печатающих "Done!" одновременно

Вопрос 8

В каких местах допущены ошибки в генераторном выражении, выдающем список координат полей шахматной доски?

(j+str(i) for i in range(1, 9) for j in "abcdefgh")
  1.  ошибка в «for j in "abcdefgh"»
  2.  ошибка в «j+str(i)»
  3.  ошибка в «for i in range(1, 9)»
  4.  ошибок нет

Вопрос 9

Сколько элементов будет содержать список L после выполнения следующего кода:

L = []
L.append([1,2,3])
L = L*2
  1.  2
  2.  6
  3.  1
  4.  4
  5.  сообщение об ошибке
  6.  7

Вопрос 10

Какие встроенные функции служат для создания объектов определенного типа (конструкторы классов/функции-фабрики…)?

  1.  dict()
  2.  chr()
  3.  isinstance()