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

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

Вариант 2123525302.


Ваше имя*:


Вопрос 1

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

S = 0
for i in range(1, 10):
  if i % 2 == 0:
    S = S + i 
print(S)


  1.  1024
  2.  20
  3.  10
  4.  0
  5.  30
  6.  сообщение об ошибке

Вопрос 2

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

import numpy as np
print(np.shape(np.transpose(np.ones((2,3)))))
  1.  (3, 2)
  2.  (2, 3)
  3.  6
  4.  array([2, 3])

Вопрос 3

С помощью какого из приведенных ниже сравнений можно установить, что x и y — это один и тот же объект?

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

Вопрос 4

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

def f(x, y, z):
  global d
  # 1
  d[(x, y)] = z
  # 2
  res = len(d)
  # 3
  return res


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

Вопрос 5

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

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

Вопрос 6

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

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

Вопрос 7

Имеется следующий генератор для слияния двух отсортированных последовательностей:

def merge(a1, a2):
 a1 = list(a1)
 a2 = list(a2)
 while a1 or a2:
   if a1 and (not a2 or a1[0] < a2[0]):
     r = a1
   else:
     r = a2
   yield r[0]
   del r[0]

Какие ошибки или особенности имеет эта программа?


  1.  генератор будет портить переданные ему списки
  2.  генератор оставит за собой временный список, так как «del» происходит после «yield»
  3.  в последней строке каждый раз удаляется элемент из временного списка, а не из «a1» или «a2»: генератор зациклится
  4.  ошибок нет

Вопрос 8

Какую роль играет xx в следующей Python-программе

 
def xx(func):
  class X(object):
    pass
  setattr(X, func.__name__, func)
  return X
 
  1.  функция-фабрика
  2.  метакласс
  3.  метод класса
  4.  функция-фабрика классов

Вопрос 9

Какие встроенные функции служат для работы с атрибутами объекта?

  1.  type(), intern(), del
  2.  hasattr(), getattr(), setattr(), delattr()
  3.  callable(), super()
  4.  staticmethod(), classmethod(), property()

Вопрос 10

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

S = 0
for i in range(1, 10, 2):
  if i % 2 == 0:
    S = S + i 
print(S)
  1.  20
  2.  сообщение об ошибке
  3.  10
  4.  0
  5.  1
  6.  1024