首页 > 解决方案 > 如何改进这种检查两个数字是正数还是负数的模式?

问题描述

我发现自己经常创造这种模式:

for _x, _y in zip(x, y):
    if _x > 0 and _y > 0:
        something += 1
    elif _x < 0 and _y < 0:
        something += 1
    else:
        something -= 1

而且我只是觉得必须有一种比这更好的pythonic方式。这是一个如此简单的算法,以至于把所有这些都写出来感觉就像是在浪费时间。

那么,我将如何改进呢?

编辑:关于重复的问题,这与此无关。这不是关于我将如何创建所需逻辑的问题,该逻辑已经在我的问题中。我要问的是如何改进我正在使用的模式。

标签: pythonpython-3.x

解决方案


我能想到的唯一改进:

for _x, _y in zip(x, y):
    something += 1 if _x * _y > 0 else -1

推荐阅读