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

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

Вариант 1880247783.


Ваше имя*:


Вопрос 1

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

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

Вопрос 2

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

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

Вопрос 3

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

 
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.  наследование. A получается наследованием B
  2.  ассоциация. Экземпляры A содержат ссылки на экземпляры класса B
  3.  агрегация. Экземпляры A содержат экземпляры класса B
  4.  наследование. B получается наследованием A

Вопрос 4

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

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

Вопрос 5

Что делает следующая программа?

import threading
 
class PR(threading.Thread):
  def __init__(self, n):
    threading.Thread.__init__(self, name="t" + n)
    self.n = n
  def run(self):
    import time
    time.sleep(1)
    print("*", end='')
 
p1 = PR("1")
p2 = PR("2")
p1.start()
p2.start()


  1.  выводит одну звездочку и зависает
  2.  через секунду выводит звездочку, а затем через секунду — еще одну
  3.  выводит две звездочки спустя секунду после запуска
  4.  выводит одну звездочку и завершается

Вопрос 6

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

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

Вопрос 7

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

  1.  locals()
  2.  directory()
  3.  enumerate()

Вопрос 8

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

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


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

Вопрос 9

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

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

Вопрос 10

Даны матрицы a и b.

 
import numpy as np
…
 

Как получить произведение матриц?


  1.  np.vdot(a, b)
  2.  a * b
  3.  np.product(a, b)
  4.  np.dot(a, b)