python - Python:在多维列表中按范围查找索引
问题描述
我是python的新手。例如,我有这个列表:
[[1, 10],[11, 20],[21,30]]
然后我有一个数字 17。如何按范围查找索引。数字 17 介于 11 和 20 之间。索引将为 1。我可以使用循环来完成。有没有内置函数没有循环的方法?
解决方案
这似乎是做你需要做的最简单的方法:
ranges = [[1, 10],[11, 20],[21,30]]
n = 17
for i, r in enumerate(ranges):
if n in range(r[0], r[1]+1):
print(i)
break
顺便说一句,对于您拥有的范围,您可以采用更数学的方法:
index = (n-1) // 10
推荐阅读
- python-3.x - Discord.py 在对消息做出反应时赋予角色
- javascript - 在 reactjs 中的单个 onClick 上切换两个不同的功能
- c - ld 在 .o 中找不到符号
- database-design - 数据库设计:我是否过度规范化?
- amazon-web-services - 无法执行 AWS Sagemaker Notebook
- python - 拟合单指数衰减误差python
- javascript - Why does event listener work on the first call but not subsequent calls?
- python - list element 'list' object has no attribute 'replace'
- python - BS4 - Web Scraping - Searching div. class =
- node.js - Sign in with google using firebase