首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >cmp()是正确的吗?

cmp()是正确的吗?
EN

Stack Overflow用户
提问于 2013-12-13 22:45:16
回答 2查看 66关注 0票数 0

我只是偶然发现了这种行为,但在任何地方都没有看到解释。我认为float('-inf')应该小于0。

代码语言:javascript
复制
>>> cmp(0, float('-inf'))
1
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-12-13 22:46:17

float('-inf') 0

当第一个参数大于第二个参数时,cmp()返回一个正值。因为float('-inf')0小,这也意味着0大于float('-inf'),所以您希望cmp()返回1

来自 documentation

比较这两个对象x和y,并根据结果返回一个整数。如果是x < y,则返回值是负值,如果是x == y,则为零,如果是x > y,则返回值是严格正的。

并简单地证实:

代码语言:javascript
复制
>>> cmp(0, -1)
1
票数 7
EN

Stack Overflow用户

发布于 2013-12-13 22:48:16

了解cmp(a, b)本质上是a-b的标志可能会有所帮助。如果是a > b,是+1,a < b是-1,a == b是0。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20577282

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档