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

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

Вариант 2269686626.


Ваше имя*:


Вопрос 1

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

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

Вопрос 2

Какие встроенные функции служат для создания объектов определенного типа (конструкторы классов/функции-фабрики…)?

  1.  dict()
  2.  chr()
  3.  isinstance()

Вопрос 3

Сколько общедоступных методов будет иметь экземпляр класса ABC и что возвратит вызов метода a()?

class A: 
    def a(self): 
        return 'a'
 
class B: 
    def b(self): 
        return 'b'  
 
class C: 
    def c(self): 
        return 'c'  
 
class AB(A, B): 
    def a(self): 
        return 'ab'
 
class BC(B, C): 
    def a(self): 
        return 'bc'
 
class ABC(AB, B, C): 
    def a(self): 
        return 'abc'
 


  1.  5, возвратит a
  2.  3, возвратит a
  3.  3, возвратит abc
  4.  3, возвратит ab

Вопрос 4

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

a = 1
b = 2
a, b = b, a
print(a, b, a)
  1.  1 1 1 1 2 1
  2.  2 1 2
  3.  1 1 1
  4.  1 2 1

Вопрос 5

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

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

Вопрос 6

В каких точках программы необходимо выполнять 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(), 4: Z.release()
  2.  замок не нужен
  3.  1: Z.acquire(), 2: Z.release(), Z.acquire(), 3: Z.release()
  4.  1: Z.acquire(), 3: Z.release()

Вопрос 7

Из какого модуля будет работать функция split() в следующем примере:

from sre import *
from string import *
split('a', 'b')
  1.  возникнет ошибка (конфликт имен)
  2.  из sre.string
  3.  из string
  4.  из re

Вопрос 8

Что будет выведено в результате выполнения сопоставления с регулярным выражением?

m = re.match("(a*?)(a+)(b+?)", "aaabbb")
print(m.groups())
  1.  ('aa', 'a', 'b')
  2.  ('aa', 'a', 'bbb')
  3.  (, 'aaa', 'b')
  4.  ('a', 'aa', 'b')

Вопрос 9

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

import numpy as np
print(np.size(np.ones((2, 5))))
  1.  array([2, 5])
  2.  (2, 5)
  3.  10
  4.  (5, 2)

Вопрос 10

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

 
class A:
  def __init__(self, **atts):
    self._atts = atts
  def __repr__(self):
    return ":" + str(self._atts)
 
class B(list):
  def __init__(self, *params):
    super(B, self).__init__(params)
 
  1.  агрегация. Экземпляры B содержат экземпляры A
  2.  классы не связаны между собой
  3.  ассоциация. Экземпляры B содержат ссылки на экземпляры A
  4.  ассоциация. Экземпляры A содержат ссылки на экземпляры B