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

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

Вариант 549946108.


Ваше имя*:


Вопрос 1

Из какого модуля будет работать функция «replace()» в следующем примере:

from sre import sub as replace
from string import replace
  1.  sre.sub
  2.  возникнет ошибка (конфликт имен)
  3.  из sre.string
  4.  из string

Вопрос 2

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

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

Вопрос 3

Какие из перечисленных функций имеют побочные эффекты:

import os
global v
v = 0
 
def A(x, y):
  return abs(x + y)
 
B = lambda k, v: os.environ.setdefault(k, v)
 
def C(x):
  global v
  v = v + 1
  return v + x


  1.  только C
  2.  никакие
  3.  только B и C
  4.  A, B, C
  5.  только A и C

Вопрос 4

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

  1.  globs()
  2.  vars()
  3.  enumerate()

Вопрос 5

Какое из приведенных ниже регулярных выражений некорректно?

  1.  [a]*?
  2.  a+b++
  3.  (a+b+)+
  4.  (?P<k>(ac))

Вопрос 6

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

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

Вопрос 7

Какую роль играет xx в Python-программе, и чему должен быть равен XXX:

 
class A(object):
  def xx(cls, x):
    ...
  xx = XXX(xx)
 
  1.  метод, XXX равен instancemethod
  2.  статический метод, XXX равен staticmethod
  3.  метод класса, XXX равен classmethod
  4.  функция, XXX можно опустить

Вопрос 8

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

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

Вопрос 9

Имеется следующий массив:

b = array([[1, 2], [0, 1]])

Какие из приведенных ниже операций получения среза вызовут ошибку?


  1.  b[: , :]
  2.  b[:, 2]
  3.  b[...]
  4.  b[0, ...]

Вопрос 10

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

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