python 编程小白 ,不会用doctest 请大神指教怎么用!!

defcompare(x,y):"""compare(5,4)1compare(7,7)0compare(2,3)-1"""ifx>y:return1elifx==y:r... def compare(x,y):
"""
compare(5,4)
1
compare (7,7)
0
compare (2,3)
-1
"""
if x>y:
return 1
elif x==y:
return 0
else :
return -1

if _name_=='_main_':

import doctest
doctest.testmood()
展开
 我来答
2666qian
推荐于2017-11-27
知道答主
回答量:18
采纳率:100%
帮助的人:19.5万
展开全部
三个引号是python里面一种字符串,写在函数里面是函数的帮助文档,你用help(compare)查看这个函数就会输出
compare(x, y)
compare(5,4)
1
compare (7,7)
0
compare (2,3)
-1
这些你写在引号之间的帮助信息。还有是testmod(),你拼错了。
不过你这样写法不能被doctest识别,你应该在每个测试的例子前面加上>>>,所以正确的写法是

def compare(x,y):
"""
>>> compare(5,4)
1
>>> compare (7,7)
0
>>> compare (2,3)
-1
"""
if x>y:
return 1
elif x==y:
return 0
else :
return -1

if __name__=='__main__':

import doctest
doctest.testmod()
这样运行python compare.py -v就会输出
Trying:
compare(5,4)
Expecting:
1
ok
Trying:
compare (7,7)
Expecting:
0
ok
Trying:
compare(2,3)
Expecting:
-1
ok
1 items had no tests:
__main__
1 items passed all tests:
3 tests in __main__.compare
3 tests in 2 items.
3 passed and 0 failed.
Test passed.
leffe_李洋
2014-12-04 · 超过59用户采纳过TA的回答
知道答主
回答量:105
采纳率:0%
帮助的人:113万
展开全部
>>>
>>> def is_between(v, lower, higher):
...     '''demo of doctest
...     >>> is_between(5,1,9)
...     True
...     >>> is_between(3,3,9)
...     False
...     '''
...     return lower<v<higher
...
>>> if __name__=='__main__':
...     import doctest
...     doctest.testmod(verbose=True)
...
Trying:
    is_between(5,1,9)
Expecting:
    True
ok
Trying:
    is_between(3,3,9)
Expecting:
    False
ok
1 items had no tests:
    __main__
1 items passed all tests:
   2 tests in __main__.is_between
2 tests in 2 items.
2 passed and 0 failed.
Test passed.
TestResults(failed=0, attempted=2)
>>>

示例代码贴给你,希望对你能有帮助


另外doctest对已知的预期结果进行测试是非常方便的,有不明白的可以追加提问。

追问
三个双引号之间需要填写什么? 引号后需要填写什么?  你的例子我懂了 但是运用到我的方程里时应该怎么写?  我的方程说是语法错误  不明白哪里错了
追答
你的那个if __name__ == '__main__':这里有问题吧。。。看好了,那个是双下划线,你写的是但下划线吧
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ok平静的岛
2018-03-19 · 贡献了超过269个回答
知道答主
回答量:269
采纳率:50%
帮助的人:16.9万
展开全部
"这样运行python compare.py -v就会输出',怎么运行啊?在哪个界面下运行,跟python版本和操作系统平台有关吗?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式