📄 tested.py
字号:
"""Demonstrates the doctest module in action."""
def slen(s, tlen=8):
"""Returns effective length of string,
allowing for tabs of given length.
>>> slen(" ")
1
>>> slen("\t"), slen(" \t")
(8, 8)
>>> [slen(" "*i+"\t") for i in range(16)]
[8, 8, 8, 8, 8, 8, 8, 8, 16, 16, 16, 16, 16, 16, 16, 16]
>>> [slen(" "*i+"\t", 3) for i in range(16)]
[3, 3, 3, 6, 6, 6, 9, 9, 9, 12, 12, 12, 15, 15, 15, 18]
>>> [slen(" \t"*i) for i in range(10)]
[0, 8, 16, 24, 32, 40, 48, 56, 64, 72]
>>> [slen("\t"*i+" ") for i in range(12)]
[1, 9, 17, 25, 33, 41, 49, 57, 65, 73, 81, 89]
>>> slen("Hello")
Traceback (innermost last):
...
ValueError: Illegal white space character
"""
r = 0
for c in s:
if c == " ": r = r+1
elif c == "\t": r = ((r+tlen)/tlen)*tlen
else: raise ValueError, "Illegal white space character"
return r
def _test():
import doctest, tested
return doctest.testmod(tested)
if __name__ == "__main__":
_test()
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -