Програмирование на языке питон. Какие характеристики можно отнести к языку программирования Python
Скачать 0.54 Mb.
|
(Правильный ответ) метод list() имеет другой формат результата: ответ сервера, список строк и длина ответа. Правильно было бы написать: response, lst, octets = p.list() учетные данные пользователя (логин и пароль) передаются сразу в методе user, а не отдельным методом pass_() Что делает следующая программа? import threading, Queueitem = Queue.Queue()def consumer(nm): while True: print item.get(), nmdef producer(nm): while True: item.put(nm)for n in range(3): threading.Thread(target=consumer, args=(«»c»»+str(n),)).start() threading.Thread(target=producer, args=(«»p»»+str(n),)).start() (Правильный ответ) программа беспрерывно печатает строки вида pN cM, где N — номер производителя, а M — номер потребителя программа содержит ошибку в цикле, где запускаются потоки программа беспрерывно печатает строки вида p0 c0, p1 c1 или p2 c2, где число после p — номер производителя, а число после c — номер потребителя программа ничего не делает или, в некоторых случаях, успевает напечатать несколько строк вида pN cM, после чего останавливается на попытке прочитать из пустой очереди Какая встроенная функция Python лучше всего подходит для цепочечных вычислений (в частности, вычислений значения многочлена по схеме Горнера)? (Правильный ответ) reduce() map() chain() filter() Какой модуль стандартной библиотеки Python позволяет работать с WWW на более низком уровне? (Правильный ответ) httplib urlparse htmllib urllib2 Какому значению paramstyle соответствует следующий пример разметки: «» «» «» INSERT INTO tv (tvdate, tvweekday, tvchannel)VALUES (%s, %s, %s);»» «» «» (Правильный ответ) ‘format’ ‘pyformat’ ‘named’ ‘qmark’ Какой код порождает следующее расположение кнопок? # 1b1.grid(row=0, column=0, rowspan=2)b2.grid(row=0, column=1)b3.grid(row=1, column=1)# 2b1.grid(row=0, column=0, columnspan=2)b2.grid(row=1, column=0)b3.grid(row=1, column=1)# 3b1.grid(row=1, column=1, rowspan=2)b2.grid(row=1, column=0)b3.grid(row=0, column=0)# 4 b1.grid(row=1, column=1, columnspan=2)b2.grid(row=0, column=1)b3.grid(row=0, column=0) 2 (Правильный ответ) 1 3 4 Какие утверждения о следующем фрагменте программы, работающей с POP3-сервером, правильные? import poplib, emailp = poplib.POP3(‘pop3.SERVER’)p.getwelcome()p.user(‘USERNAME’)p.pass_(‘USERPASSWORD’)response, lst, octets = p.list()## обработка lst#p.quit() делать quit() необязательно, он выполнится сам учетные данные пользователя (логин и пароль) передаются сразу в методе user, а не отдельным методом pass_() (Правильный ответ) ошибок нет метод list() имеет другой формат результата: просто список. Ошибки (response) в случае необходимости передаются возбуждением исключений Сокрытие информации о внутреннем устройстве объекта, при котором вся работа с объектом ведется только через общедоступный интерфейс называется агрегацией абстракцией декомпозицией (Правильный ответ) инкапсуляцией Какими из перечисленных ниже способов можно получить случайный элемент последовательности lst с помощью модуля random? random.random(lst) (Правильный ответ) random.choice(lst) (Правильный ответ) random.shuffle(lst); lst[0] (Правильный ответ) lst[random.randrange(len(lst))] Как можно получить список активных на данный момент потоков? (Правильный ответ) threading.enumerate() threading.currentThreads() threading.active() threading.activeCount() Как начать интерактивную отладку функции f с двумя аргументами (условно: x и y)? import pdb; pdb.runcall(f(x, y)) import pdb; pdb.runcall(f, (x, y)) import pdb; pdb.runcall(«»f(x, y)»») (Правильный ответ) import pdb; pdb.runcall(f, x, y) Какая строка получится в результате следующей операции: «»=%r %0.1f %03i=»» % («»abc»», 1.234, 3) =abc 1.2 3= (Правильный ответ) =’abc’ 1.2 003= =’abc’ .2 3= =’abc’ 1.2 3 = С помощью какого макроса удобнее всего определить строку документации при использовании C API? (Правильный ответ) PyDoc_STRVAR PyDoc PyDoc_VAR PyDoc_STR Что будет выведено следующей программой: a = «»A»»b = «»B»»b = b + aprint a + b (Правильный ответ) AВА сообщение об ошибке в третьей строке ВА АВ Какой из перечисленных обработчиков mod_python выполняется раньше других? PythonHeaderParserHandler (Правильный ответ) PythonPostReadRequestHandler PythonAuthenHandler PythonHandler Как называется отношение, которое имеют между собой следующие два класса: class A(object): 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) (Правильный ответ) классы не связаны между собой ассоциация. Экземпляры A содержат ссылки на экземпляры B агрегация. Экземпляры B содержат экземпляры A ассоциация. Экземпляры B содержат ссылки на экземпляры A В каких частях программы допущены ошибки в следующем примере? import threading# 1def proc(*args): print «»Процесс в потоке пошел!»» while 1: pass# 2p1 = threading.Thread(target=proc(), name=»»t1″», args=[2])# 3p1.start() ошибок нет (Правильный ответ) 2 3 1 С помощью какого класса из какого модуля пакета email можно вложить в сообщение бинарный файл? модуль MIMEMultipart, класс MIMEMultipart модуль MIMEMessage, класс MIMEMessage (Правильный ответ) модуль MIMEBase, класс MIMEBase модуль Utils, класс MIME В какой переменной окружения передается имя пользователя (если применяется авторизация)? (Правильный ответ) REMOTE_USER LOGIN USER_NAME USER В каких из перечисленных ниже случаев удобнее встроить интерпретатор Python в программную систему? (Правильный ответ) когда системе требуется функциональность, которую пользователю удобнее описать на языке сценария, но система изначально написана на C/C++ система доступна в виде бинарной библиотеки когда система позволяет вызывать внешние сценарии система поставляется как пакет прикладных программ Сколько элементов будет содержать словарь D (то есть, чему будет равно len(D)) после выполнения следующего к» Номер 1 Язык Python: Ответ: (1) имеет возможность интеграции с другими языками программирования (2) является низкоуровневым языком программирования (3) является высокоуровневым языком программирования (4) имеет статическую типизацию (5) имеет динамическую типизацию Номер 2 Язык Python: Ответ: (1) подходит для написания сценариев, связывающих остальные компоненты проекта (2) предназначен для решения задач требовательных к производительности кода (3) предназначен для быстрой разработки приложений (4) является компилируемым языком (5) является интерпретируемым языком Номер 3 Язык Python: Ответ: (1) сильно типизирован (2) слабо типизирован (3) поощряет повторное использование кода (4) является низкоуровневым языком программирования (5) является высокоуровневым языком программирования Номер 4 Язык Python: Ответ: (1) имеет сложный и обширный синтаксис (2) предназначен для быстрой разработки приложений и написания сценариев (3) имеет статическую типизацию (4) сильно типизирован (5) слабо типизирован Номер 5 Язык Python: Ответ: (1) является компилируемым языком (2) является интерпретируемым языком (3) является низкоуровневым языком программирования (4) является высокоуровневым языком программирования (5) является универсальным языком программирования Номер 6 Язык Python: Ответ: (1) имеет простой синтаксис (2) имеет обширный и сложный синтаксис (3) предназначен для решения задач, требовательных к производительности кода (4) предназначен для быстрой разработки приложений (5) поощряет повторное использование кода Упражнение 2: Номер 1 Язык Python поддерживает следующие парадигмы программирования: Ответ: (1) автоматное программирование (2) структурное программирование (3) модульное программирование (4) процедурное программирование (5) логическое программирование Номер 2 Язык Python поддерживает следующие парадигмы программирования: Ответ: (1) программирование в ограничениях (2) аспектно-ориентированное программирование (3) объектно-ориентированное программирование (4) структурное программирование (5) модульное программирование Номер 3 Язык Python поддерживает следующие стили программирования: Ответ: (1) процедурное программирование (2) декларативное программирование (3) объектно-ориентированное программирование (4) функциональное программирование (5) аспектно-ориентированное программирование Номер 4 Язык Python поддерживает следующие парадигмы программирования: Ответ: (1) объектно-ориентированное программирование (2) модульное программирование (3) императивное программирование (4) функциональное программирование (5) логическое программирование Номер 5 Язык Python поддерживает следующие парадигмы программирования: Ответ: (1) модульное программирование (2) структурное программирование (3) аспектно-ориентированное программирование (4) программирование в ограничениях (5) процедурное программирование Номер 6 Язык Python поддерживает следующие парадигмы программирования: Ответ: (1) структурное программирование (2) автоматное программирование (3) декларативное программирование (4) императивное программирование (5) аспектно-ориентированное программирование Упражнение 3: Номер 1 Привести переменную x к типу числа с плавающей точкой можно следующим способом: Ответ: (1) (float)x (2) x.float() (3) x.__float__() (4) float(x) (5) x.__class__=float Номер 2 Python поддерживает следующие простые скалярные типы: Ответ: (1) целое (2) беззнаковое целое (3) булево (логическое) (4) число с плавающей точкой (5) строка Номер 3 Привести переменную x к типу числа с плавающей точкой можно следующим способом: Ответ: (1) (double)x (2) x.double() (3) x.__double__() (4) double(x) (5) никаким из вышеперечисленных Номер 4 Тип переменной во время выполнения скрипта определяется по следующим правилам: Ответ: (1) тип переменной явно указывается при определении переменной и не изменяется в процессе выполнения скрипта (2) тип переменной явно указывается при определении переменной и изменяется только при приведении этой переменной к другому типу (3) тип переменной определяется типом первого значения, которое было ей присвоено, и далее не изменяется (4) тип переменной изменяется при приведении этой переменной к другому типу, а также может изменяться в зависимости от контекста использования этой переменной (5) тип переменной изменяется при присваивании, но не может изменяться в зависимости от контекста использования этой переменной Номер 5 Тип переменной x можно узнать следующим способом: Ответ: (1) type(x) (2) x.type() (3) x.__class__ == имя_типа (4) x.__class__ is имя_типа (5) x.__class__ == "имя типа" Номер 6 Из приведенных ниже высказываний укажите истинное: Ответ: (1) перед использованием переменной она должна быть определена с указанием типа и инициализирована каким-либо значением (2) перед использованием переменной она должна быть определена с указанием типа (3) перед использованием переменной она должна быть инициализирована каким-либо значением (4) переменные не обязаны быть инициализированы каким-либо значением перед использованием, а тип переменной определяется в зависимости от контекста (5) перед использованием переменной она будет автоматически проинициализирована значением по умолчанию Упражнение 4: Номер 1 Укажите результат выполнения скрипта: foo = (1,) bar = foo bar += (1,) print (foo) Ответ: (1) (1,) (2) (1,1) (3) (1) (4) скрипт не будет выполнен, так как содержит ошибки Номер 2 Укажите результат выполнения скрипта: foo = 0x01 bar = foo bar += 0x01 print (foo) Ответ: (1) 1 (2) 2 (3) 0 (4) скрипт не будет выполнен, так как содержит ошибки Номер 3 Укажите результат выполнения скрипта: foo = {'1':1} bar = foo bar['2']=1 print (foo) Ответ: (1) {'1': 1} (2) {'1': 1, '2': 1} (3) {'1': 1, '2': 2} (4) скрипт не будет выполнен, так как содержит ошибки Номер 4 Укажите результат выполнения скрипта: foo = [1] bar = foo bar += [1] print (foo) Ответ: (1) [1] (2) [2] (3) [1, 1] (4) скрипт не будет выполнен, так как содержит ошибки Номер 5 Укажите результат выполнения скрипта: foo = [1] bar = foo bar = bar + [1] print (foo) Ответ: (1) [1] (2) [2] (3) [1,1] (4) скрипт не будет выполнен, так как содержит ошибки Номер 6 Укажите результат выполнения скрипта: foo = [1] bar = foo foo += [1] bar = bar + [1] print (foo) Ответ: (1) [1] (2) [2] (3) [1,1] (4) [1,1,1] (5) скрипт не будет выполнен, так как содержит ошибки |