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

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

Вариант 3443838919.


Ваше имя*:


Вопрос 1

В каких точках программы необходимо выполнять acquire() и release() замка Z, чтобы функция f могла правильно работать в многопоточном приложении? (Как обычно, нужно минимизировать общее время, на которое запирается замок)

def f(x):
  # 1
  fc = open("file.txt", "w+")
  # 2
  fc.write(x)
  # 3
  fc.write("\n")
  # 4
  fc.close()
  # 5


  1.  2: Z.acquire(), 4: Z.release()
  2.  1: Z.acquire(), 5: Z.release()
  3.  замок не нужен
  4.  1: Z.acquire(), 2: Z.release(), Z.acquire(), 5: Z.release()

Вопрос 2

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

a = "A"
b = "B"
a, b = b + a
print(a + b)
  1.  АВ
  2.  сообщение об ошибке в третьей строке
  3.  АВА
  4.  ВА

Вопрос 3

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

a = 1
b = 2
a, b = b, a
print(a, b, a)
  1.  1 2 1
  2.  1 1 1 1 2 1
  3.  2 1 2
  4.  1 1 1

Вопрос 4

Что произойдет со старыми объектами модуля, используемыми в программе, при его перезагрузке по reload() (после изменения на диске):

import mdl
a = mdl.a
b = mdl.b()
reload(mdl)
  1.  изменятся только классы, функции и т.п. (a)
  2.  имена из модуля (mdl.a, mdl.b) будут ссылаться на другие объекты. Старые объекты (a, b) не изменятся
  3.  изменится только mdl
  4.  объекты (a, b) изменятся в соответствии с новыми определениями

Вопрос 5

Сокрытие информации о внутреннем устройстве объекта, при котором вся работа с объектом ведется только через общедоступный интерфейс называется

  1.  инкапсуляцией
  2.  агрегацией
  3.  декомпозицией
  4.  абстракцией

Вопрос 6

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

0 < [1, 4], [1] < 3
  1.  True (или 1)
  2.  False (или 0)
  3.  None
  4.  (True, False) или (1, 0)
  5.  это синтаксическая ошибка

Вопрос 7

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

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

Вопрос 8

С помощью какого регулярного выражения можно найти все (ровно) пятикратные повторения цифры 0?

  1.  00000
  2.  0{1,5}[^0]
  3.  00000([^0]|\Z)
  4.  0{5}[^0]
  5.  ([^0]|\A)0{5}([^0]|\Z)

Вопрос 9

Сколько элементов будет содержать словарь D (то есть, чему будет равно len(D)) после выполнения следующего кода:

D = {}
D[1], D[2], D[3] = "ABB"
D[0], D[1] = "AB"
  1.  1
  2.  2
  3.  4
  4.  сообщение об ошибке
  5.  3

Вопрос 10

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

(0 < 5 <= 3) and (0 / 0)
  1.  True (или 1)
  2.  будет возбуждено исключение ZeroDivisionError (деление на нуль)
  3.  None
  4.  False (или 0)
  5.  синтаксическая ошибка