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

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

Вариант 1081763239.


Ваше имя*:


Вопрос 1

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

L = []
L.append([1,2,3])
L = L*2
  1.  7
  2.  4
  3.  сообщение об ошибке
  4.  6
  5.  1
  6.  2

Вопрос 2

Как определить функцию в Python?

  1.  заданием списка строк исходного кода
  2.  с помощью оператора import
  3.  с помощью ключевого слова «function»
  4.  с помощью lambda-выражения

Вопрос 3

Начало определения функции «f» выглядит так:

def f(a, b, c=None, d="0"):

Какие из следующих вариантов вызова приведут к ошибке на этапе присваивания фактических параметров формальным?

  1.  «f(1, 2, d=3)»
  2.  «f(1, 2)»
  3.  «f(1, 2, d=3, c=4)»
  4.  «f(1, d=3)»
  5.  «f(1, 2, 3, 4)»

Вопрос 4

С помощью функций какого модуля проще всего исследовать содержимое стека при обработке исключения в части except?

  1.  inspect
  2.  tb
  3.  dis
  4.  traceback

Вопрос 5

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

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

Вопрос 6

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

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

Вопрос 7

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

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


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

Вопрос 8

Имеется массив c, для которого shape(c) равна (2, 2, 2).

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

  1.  c[1,2]
  2.  c[...,1]
  3.  c[::2,1]
  4.  c[:,-1]

Вопрос 9

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

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

Вопрос 10

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

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