python - 检查一个值是否在 Python 中的范围列表中?
问题描述
我在这里有两个范围列表:
我正在尝试检查一个值是否在某个范围的任何范围内,如果是,则返回索引。有什么方法可以检查这个而不必做列表理解?
>>> a=range(1,4)
>>> b=range(4,7)
>>> c=range(7,10)
>>> d=[a,b,c]
>>> d
[range(1, 4), range(4, 7), range(7, 10)]
>>> 3 in d[0]
True
解决方案
def get_range_ind(num, min_val, max_val):
if num in range(min_val, max_val+1):
return num - min_val + 1
get_range_ind(6, 3, 9)
>>> 4
推荐阅读
- php - 如何远程更新 Symfony FW 应用程序?
- android - 如何在回收站视图android中放置一个标签,即(新)?
- javascript - 如何在网关脚本中解析文本/纯内容
- javascript - 映射值的最佳数据结构
- tensorflow - 通过采集函数中的精确梯度进行贝叶斯非参数进化 - TensorFlow Core v2.5.0
- javascript - Vimeo Video 当前当前滑块取消静音/自动播放和其他静音/自动播放暂停
- android - 如何替换协程android中的回调
- ruby - Ruby返回虚数
- javascript - 有没有办法使用 Discord.js 回复机器人以激活命令。此外,给用户一定的时间来使用该命令
- python - 在 fastai 中使用协同过滤后,你能得到一个预测的用户项目矩阵吗?