игра брюс 2048
Главная / Программирование / Язык программирования Python / Тест 13

Язык программирования Python - тест 13

Упражнение 1:
Номер 1
Какие функции выполняет SWIG?

Ответ:

 (1) создает интерфейсные файлы 

 (2) интерпретирует заголовочные файлы C/C++ 

 (3) интерпретирует интерфейсные файлы собственного формата 

 (4) компилирует и компонует модуль расширения для Python 


Номер 2
Какие функции выполняет Pyrex?

Ответ:

 (1) создает файлы на C/C++ из файлов на Pyrex 

 (2) на основе C/C++ кода создает файлы на Python 

 (3) интерпретирует Pyrex-файлы в код Python 

 (4) компилирует и компонует модуль расширения для Python 


Номер 3
Для чего нужен Pycaml?

Ответ:

 (1) создает файлы модуля расширения Python на C/C++ из кода ocaml 

 (2) создает файлы модуля расширения Python на Ocaml 

 (3) позволяет встроить интерпретатор Python в программу на Ocaml 

 (4) позволяет использовать Python-библиотеки из Ocaml 


Номер 4
Что позволяет делать Jython?

Ответ:

 (1) встраивать интерпретатор Python в Java-программы 

 (2) использовать в Python Java-классы 

 (3) писать Java-аплеты в синтаксисе Python 

 (4) встраивать в обычный Python Java-код 


Номер 5
Насколько полно C API Python охватывает средства языка Python?

Ответ:

 (1) только основные вызовы интерпретатора 

 (2) меньше половины возможностей 

 (3) значительная часть возможностей 

 (4) практически все возможности 


Упражнение 2:
Номер 1
С помощью какого макроса удобнее всего определить строку документации при использовании C API?

Ответ:

 (1) PyDoc_VAR 

 (2) PyDoc_STR 

 (3) PyDoc_STRVAR 

 (4) PyDoc 


Номер 2
Какие функции C API обеспечивают разбор переданных аргументов?

Ответ:

 (1) PyArg_ParseTuple 

 (2) PyArg_ParseTupleAndKeywords 

 (3) Py_BuildValue 

 (4) Py_Initialize 


Номер 3
Какой макрос уменьшает счетчик ссылок объекта на единицу?

Ответ:

 (1) PyMem_Free 

 (2) PyMem_Del 

 (3) Py_DECREF 


Номер 4
Где мог встретиться следующий фрагмент кода?
%module gugu
%typemap(out) char * {
  char i;
  $result = PyTuple_New(6);

Ответ:

 (1) это код на языке Pyrex 

 (2) это код модуля расширения на C 

 (3) это код из интерфейсного файла SWIG 

 (4) это код OCaml 


Номер 5
Где мог встретиться следующий фрагмент кода?
  if a < 5:
  a = 1000

Ответ:

 (1) это код на языке Pyrex 

 (2) это код модуля расширения на C 

 (3) это код из интерфейсного файла SWIG 

 (4) это код на Python 


Упражнение 3:
Номер 1
Какие из следующих программ (модулей) лучше написать в виде модулей расширения на языке более низкого уровня, чем Python? 

Ответ:

 (1) программу для запуска других программ 

 (2) модуль матричных вычислений 

 (3) обработку файла лога с помощью регулярных выражений 

 (4) производительный HTTP-прокси сервер 


Номер 2
 Какие из следующих программ (модулей) лучше написать в виде модулей расширения на языке более низкого уровня, чем Python?

Ответ:

 (1) управление приложением с графическим интерфейсом пользователя 

 (2) преобразование файла с видеоданными из одного формата в другой 

 (3) программу для формирования квартального отчета небольшой организации 

 (4) генерацию примеров для тестирования, требующая частой переделки 


Номер 4
В каких из перечисленных ниже случаев удобнее встроить интерпретатор Python в программную систему? 

Ответ:

 (1) когда система позволяет вызывать внешние сценарии 

 (2) когда системе требуется функциональность, которую пользователю удобнее описать на языке сценария, но система изначально написана на C/C++ 

 (3) система доступна в виде бинарной библиотеки 

 (4) система поставляется как пакет прикладных программ 


Номер 5
В каком случае целесообразно написать модуль расширения, а не модуль на чистом Python (в предположении, что программная система пишется на Python)?

Ответ:

 (1) требуемая от модуля функциональность доступна в виде бинарной библиотеки 

 (2) система требует большой гибкости, но не требует высокой производительности 

 (3) предполагается, что модуль будет часто использоваться, но изменения в нем будут довольно редкими 

 (4) от модуля требуется высокая производительность 




Главная / Программирование / Язык программирования Python / Тест 13