все 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Сообщить о неточности