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

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

Вариант 2458458882.


Ваше имя*:


Вопрос 1

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

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.  A, B, C
  2.  никакие
  3.  только A и B
  4.  только B и C
  5.  только B

Вопрос 2

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

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

Вопрос 3

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

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

Вопрос 4

Что можно узнать с помощью регулярного выражения r'([01]+)\1\1'?

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

Вопрос 5

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

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

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

Вопрос 6

С помощью какой функции можно организовать цикл с параметром («for»)?

  1.  reload()
  2.  id()
  3.  xrange()
  4.  range()

Вопрос 7

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

 
def A(lst):
  return lambda x: lst + [x]
 
def B(x):
  return lambda lst: lst + [x]
 
def C(x, cache={}):
  return cache.setdefault(x, lambda lst: lst + [x])
 
  1.  A, B, C
  2.  только C
  3.  только B и C
  4.  никакие

Вопрос 8

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

a = "AB"
b = "BC"
print("%sa, b" % a, b)
  1.  (AB, BC)a, b
  2.  ('AB', 'BC')a, b
  3.  ABa, b BC
  4.  "AB", "BC"a, b
  5.  сообщение об ошибке

Вопрос 9

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

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

Вопрос 10

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

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