Python Glossary English

все Python 3doctestпонятие

doctest.DocTestParser

строительные блоки

Разбирает текст с примерами >>> на код и ожидаемый вывод: get_examples() даёт список Example, get_doctest() — готовый DocTest.

Синтаксис

doctest.DocTestParser().get_examples(string, name='<string>')

Ожидаемый вывод — всё после строки >>> или ... до пустой строки или следующего >>>. Строка продолжения пишется с ..., и отступ примера должен быть одинаковым, иначе ValueError. Директивы в комментарии # doctest: разбираются здесь же и попадают в Example.options.

Примеры

import doctest
text = """
>>> total = 0
>>> for i in range(3):
...     total += i
>>> total
3
>>> print('x')  # doctest: +SKIP
x
"""
examples = doctest.DocTestParser().get_examples(text)
print(len(examples), repr(examples[2].want))  # → 4 '3\n'
print(examples[3].options == {doctest.SKIP: True})  # → True

См. также

Открыть в полном глоссарииdocs.python.orgСообщить о неточности