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

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

Вариант 1188817386.


Ваше имя*:


Вопрос 1

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

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

Вопрос 2

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

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

Вопрос 3

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

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

Вопрос 4

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

def f(x):
  # 1
  fc = open("file.txt", "w+")
  # 2
  fc.write(x)
  # 3
  fc.write("\n")
  # 4
  fc.close()
  # 5


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

Вопрос 5

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

a = "AB"
b = "BC"
print("%sa, b" % a, b)
  1.  ('AB', 'BC')a, b
  2.  "AB", "BC"a, b
  3.  (AB, BC)a, b
  4.  ABa, b BC
  5.  сообщение об ошибке

Вопрос 6

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

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


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

Вопрос 7

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

 
import threading
ready = threading.Event()
 
def proc():
  ready.wait()
  print("Done!")
 
for i in range(5):
  p = threading.Thread(target=proc)
  p.start()
 
print("Prepare!")
ready.set()
 
  1.  программа запускает пять дополнительных потоков, печатающих "Done!" после выполнения ready.set(), то есть, после печати "Prepare!"
  2.  программа запускает пять дополнительных потоков, один из которых печатает "Done!" после выполнения ready.set(), а остальные ждут следующего ready.set()
  3.  программа создает пять дополнительных потоков, которые запускаются после выполнения ready.set() в главном потоке
  4.  программа запускает пять дополнительных потоков, печатающих "Done!" одновременно

Вопрос 8

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

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

Вопрос 9

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

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

Вопрос 10

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

(" ", )
  1.  unicode (Unicode-строка)
  2.  tuple (кортеж)
  3.  str (строка)
  4.  это синтаксическая ошибка