python - 获取python列表中下一个非零值的索引
问题描述
假设您有一个列表[1,2,3,4,5,0,0,0,7,8, ...]
。给定当前索引,获得下一个非零索引的最佳方法是什么?例如,如果 index 是 2,那么下一个非零的一个是 3;如果为 4,则为 8。
解决方案
a = [1,2,3,4,5,0,0,0,7,8]
def nextZeroIndex(array, start):
nextItems = array[start+1:]
for i, x in enumerate(nextItems):
if x != 0:
return 1 + start + i
print(nextZeroIndex(a, 2)) # 3
print(nextZeroIndex(a, 5)) # 8
print(nextZeroIndex(a, 4)) # 8
推荐阅读
- c# - 连接两个表格以显示汽车品牌
- mongodb - 在使用 Pageable 访问值问题之前调用“Optional#isPresent()”
- reactjs - 从文本框中删除管理密码自动填充
- spss - 如何使用SPSS软件从数据录入到分析
- spring-boot - 除刷新或重新加载外,如何计算点击/访问页面数?
- ipad - 如何自定义 android 和 ios 构建
- javascript - 如何在 MarkLogic 的 TDE 中提供空值?
- swift - 如何在swift中修复'表达式类型'CGSize'在没有更多上下文的情况下模棱两可?
- python-3.x - 在pyserial中管理读写切换之间的正确时间?
- android - 如何在 Android 的 Fragment 中使用 setUserVisibleHint