Уроки Python классные. Позвольте мне начать с простого примера:
def foo():
"""
>>> foo()
hello world
"""
print "hello world"
Теперь предположим, что какая-то часть несколько изменяет, например, потому что это значение времени или случайное число. В общем, доктрины позволяют мне задавать подстановочный знак, используя опцию + ELLIPSIS.
Это отлично работает, когда, например, "мир" представляет собой переменную строку:
def foo():
"""
>>> foo() # doctest: +ELLIPSIS
hello ...
"""
print "hello world"
В моем случае, однако, переменная строка находится в начале строки:
def foo():
"""
>>> foo() # doctest: +ELLIPSIS
... world
"""
print "hello world"
что плохо, потому что 3 точки в начале интерпретируются как символы продолжения строки, а не как многоточие для вывода. Поэтому этот тест не выполняется:
Failed example:
foo() # doctest: +ELLIPSIS
world
Expected nothing
Got:
hello world
Итак, теперь я могу переписать свой вариант, чтобы иметь переменную часть в другом месте, но есть ли способ научить доктрине, что три точки в начале строки являются многоточиями?