【发布时间】:2019-04-09 21:14:04
【问题描述】:
我不知道如何清楚地简化 if 语句运行的要求。 有没有更简单的方法可以做到这一点? 如果数字是接近 10 的 2 个整数,则代码应该返回 True,无论是高于还是低于。
def nearten(num):
if (abs(num - 2) % 10) == 0 or (abs(num + 2) % 10) == 0 or (abs(num - 1) % 10) == 0 or (abs(num + 1) % 10) == 0 or num % 10 == 0:
return True
return False
【问题讨论】:
-
def nearten(num): return abs(10 - num) <= 2 -
就像@PMende 所说:你确定这是你想要的条件吗?因为
x % 10会为您提供最后一位数字。例如123 % 10 == 3- 其中 123 不在 10 附近。 -
@foobarna 我要离开提供的问题描述,即“如果数字是 2 个接近 10 的整数,代码应该返回 True,要么高于或低于。”如果柯蒂斯的代码比我的更接近他想要的行为,我可以提供修改。
标签: python-3.x simplify simplification