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

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

Вариант 2313774268.


Ваше имя*:


Вопрос 1

Имеются следующие определения:

 
def m1(self):
  print("m1")
 
class M:
  def m2(self):
    print("m2")
 
m = M()
 


Какой из фрагментов кода содержит ошибки?


  1.   m.m1 = m1; m.m1(m)
  2.   m.m1 = m.m2; m.m1()
  3.   M.m1 = m1; m.m1()
  4.   m.m1 = m1; m.m1()

Вопрос 2

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

l = [1, 2, 3]
l[1] = l[1:2]
print(l[1])
  1.  сообщение об ошибке
  2.  [2]
  3.  [1]
  4.  2
  5.  [1, 2]

Вопрос 3

Класс имеет методы «__iter__()» и «next()».

О чем это говорит и как пользоваться этим методом?

 
class A:
  #...
  def __iter__(self): 
    #...
  def next(self):
    #...
a = A(1, 2, 3)
 
  1.  нет особого названия. Пользоваться можно так: print a.next()
  2.  последовательность. Пользоваться можно так: print a[2]
  3.  итератор. Пользоваться можно так: for i in a: print i
  4.  генератор. Пользоваться можно так: for i in a(): print i

Вопрос 4

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

lst = []
 
def A(lst, x):
  return lst + [x]
 
def B(x):
  lst.append(x)
  return lst
 
def C(lst, x):
  return lst.count(x)
  1.  только B
  2.  никакие
  3.  только A и B
  4.  A, B, C
  5.  только B и C

Вопрос 5

Какими способами можно получить доступ к функции «fun()» из модуля «fns»?

  1.  import fns.fun; fns.fun()
  2.  from fns import fun; fun()
  3.  import fns.fun as fun; fun()

Вопрос 6

Карринг — это...

  1.  перенос параметров функции в ее результат
  2.  получение новой функции на основе заданной функции, при котором часть аргументов получает значение
  3.  передача функции в другую функцию
  4.  возврат объекта-функции из другой функции

Вопрос 7

Какими способами можно получить доступ к функции «fun()» из модуля «fns»?

  1.  import fns; fns.fun()
  2.  import fns.fun as fun; fun()
  3.  import fns.fun; fns.fun()

Вопрос 8

Имеются следующие определения:

 
class A:
  def am(self):
    print "am"
 
class B:
  def bm(self):
    print "bm"
 
a = A()
b = B()
 


Какой из фрагментов кода содержит ошибки?


  1.   A.am = B.bm; a.am()
  2.   A.am = b.bm; a.am()
  3.   a.am = b.bm; a.bm()
  4.   a.am = b.bm; a.am()

Вопрос 9

Что обычно делается для возврата более одного значения из функции?

  1.  ничего; возвратить можно только одно значение
  2.  возвращается список значений
  3.  значения можно вернуть через объекты, заданные в списке аргументов (как в C/C++)
  4.  возвращается кортеж значений

Вопрос 10

Получен новый пакет (в виде исходных кодов) для Python. Какова рекомендуемая процедура установки нового модуля, если известно, что он использует «distutils»?

  1.  скопировать содержимое в каталог .../site-packages
  2.  выполнить в каталоге с развернутым пакетом команду «python setup.py install»
  3.  выполнить «distutils --install имя модуля»
  4.  в Windows — запустить установщик