文檔測(cè)試
import doctest
def mysum(x,y):
'''
>>> print(mysum(1,2))
3
'''
return x + y
print(mysum(1,2))
doctest.testmod()
運(yùn)行結(jié)果:
3
但是如果函數(shù)發(fā)生改動(dòng):
import doctest
def mysum(x,y):
'''
>>> print(mysum(1,2))
3
'''
return x + y +1
print(mysum(1,2))
doctest.testmod()
那么輸出就會(huì)有變化,測(cè)試沒(méi)通過(guò):
4
**********************************************************************
File "/Users/miraco/Library/Preferences/PyCharm2018.1/scratches/test.py", line 5, in __main__.mysum
Failed example:
print(mysum(1,2))
Expected:
3
Got:
4
**********************************************************************
1 items had failures:
1 of 1 in __main__.mysum
***Test Failed*** 1 failures.
裝飾器
from time import ctime
def deco(func):
def decorator(*args, **kwargs):
print('[%s] %s() is called' % (ctime(), func.__name__))
return func(*args, **kwargs)
return decorator
@deco
def foo():
print('Hello, Python')
foo()
運(yùn)行結(jié)果:
[Wed Nov 14 19:33:17 2018] foo() is called
Hello, Python