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

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

Вариант 4256135613.


Ваше имя*:


Вопрос 1

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

import threading
l = threading.Lock()
 
def proc(nm, n=0):
  l.acquire()
  try:
    if n < 5:
      print("*", end='')
      return proc(nm, n+1)
    else:
      return nm
  finally:
    l.release() 
 
for i in range(5):
  threading.Thread(target=proc, args=(str(i),)).start()
  1.  печатает 25 звездочек
  2.  аварийно завершается при попытке выполнить l.acquire() во второй раз
  3.  беспрерывно печатает звездочки
  4.  печатает 1 звездочку и зависает
  5.  печатает 5 звездочек

Вопрос 2

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

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

Вопрос 3

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

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

Вопрос 4

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

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

Вопрос 5

Сколько элементов будет содержать словарь D (то есть, чему будет равно len(D)) после выполнения следующего кода:

D = {}
D[1], D[2], D[3] = "ABB"
D[0], D[1] = "AB"
  1.  3
  2.  4
  3.  сообщение об ошибке
  4.  1
  5.  2

Вопрос 6

Какие новые имена появятся в текущем модуле после выполнения следующего кода:

import sre as re
from re import compile
  1.  имена sre, re и compile
  2.  нельзя одновременно делать import и «from … import»
  3.  только имена re и compile
  4.  только имена sre и compile

Вопрос 7

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

lst = []
 
def A(l, x):
  return lst + [x]
 
def B(l, x):
  lst.append(x)
  return lst
 
def C(l, x):
  return lst.count(x)


  1.  только B и C
  2.  только A и B
  3.  A, B, C
  4.  только B
  5.  никакие

Вопрос 8

Что такое «os.environ»?

  1.  функция для получения переменных окружения
  2.  системные константы Python
  3.  последовательность переменных окружения
  4.  словарь переменных окружения

Вопрос 9

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

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

Вопрос 10

Сколько общедоступных методов будет иметь экземпляр класса 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.  3, возвратит abc
  2.  5, возвратит a
  3.  3, возвратит ab
  4.  3, возвратит a