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

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

Вариант 1202471633.


Ваше имя*:


Вопрос 1

Для чего в регулярном выражении используется "\w"?

  1.  для обозначения символа, который не является ни буквой, ни цифрой
  2.  для обозначения того, что в этом месте нет границы слова
  3.  для обозначения буквы или цифры
  4.  для обозначения границы слова

Вопрос 2

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

S = "\n123\\"
  1.  6
  2.  7
  3.  5
  4.  4
  5.  сообщение об ошибке
  6.  3

Вопрос 3

Что произойдет при повторном импорте модуля (в том же блоке кода) оператором import

  1.  программа завершится по ошибке
  2.  модуль будет заново загружен с диска
  3.  ничего

Вопрос 4

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

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

Вопрос 5

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

L = []
L.extend([1,2,3])
L.insert(1, "abc")
del L[0][0]
  1.  1
  2.  сообщение об ошибке
  3.  4
  4.  2
  5.  3

Вопрос 6

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

 
class A(type):
  def __init__(cls, name, bases, dict):
    return super(A, cls).__init__(cls, name, bases, dict)
 
B = A("B", (), {})
 
  1.  ассоциация. A содержит ссылки на B
  2.  метакласс. A является метаклассом для B
  3.  метакласс. B является метаклассом для A
  4.  наследование. B получается наследованием A

Вопрос 7

Какие из приведенных ниже сравнений обязательно дадут True, если объекты x и y имеют одинаковые значения?

  1.  id(x) == id(y)
  2.  hash(x) == hash(y)
  3.  x is y

Вопрос 8

Каким из приведенных ниже способов можно убрать из строки s пробельные символы слева и справа?

  1.  s.split()
  2.  s.strip()
  3.  s.trim()
  4.  s.isspace()

Вопрос 9

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

 
import threading
l = threading.RLock()
 
def proc(nm, n=0):
  l.acquire()
  try:
    if n < 5:
      print("*", end='')
      return proc(nm, n+1)
    else:
      return nm
  finally:
    l.release() 
 
for i in range(5):
  threading.Thread(target=proc, args=(str(i),)).start()
  1.  печатает 25 звездочек
  2.  печатает 1 звездочку и зависает
  3.  аварийно завершается при попытке выполнить l.acquire() во второй раз
  4.  печатает 5 звездочек
  5.  беспрерывно печатает звездочки

Вопрос 10

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

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