繁体   English   中英

查找列表项,然后获取下一个列表项

[英]Find list item then get next list item

尝试在列表中找到一个项目,然后获取下一个列表项目

我尝试了迭代器,即枚举器函数。 没有骰子。

lst = ['SOME TEXT FOR THE FIRST ITEM','THE COURT FINDS THAT A COMMUNITY CONTROL SANCTION WILL ADEQUATELY PROTECT THE PUBLIC AND WILL NOT DEMEAN THE SERIOUSNESS OF THE OFFENSE.', 'IT IS THEREFORE ORDERED THAT THE DEFENDANT IS SENTENCED TO 2 YEAR(S) OF COMMUNITY CONTROL, UNDER SUPERVISION OF THE ADULT PROBATION DEPARTMENT WITH THE FOLLOWING CONDITIONS: DEFENDANT TO ABIDE BY THE RULES AND REGULATIONS OF THE PROBATION DEPARTMENT.', 'LAST ITEM IN THE LIST']




for x in lst:
    lst_item = iter(lst)
    if "WILL ADEQUATELY PROTECT" in x:
        print(next(lst_item))

期望得到包含所搜索字符串的项目之后的下一个列表项目。

enumerate函数应该起作用:

for index, item in enumerate(lst):
    if "WILL ADEQUATELY PROTECT" in item:
        print(lst[index + 1])

代码的问题在于,您在整个列表上调用iter,而不是在所需项目之后的列表上调用iter。 如果要使用iter方法,可以执行以下操作:

it = iter(lst)
for item in it:
    if "WILL ADEQUATELY PROTECT" in item:
        print(next(it))

最直接的方法是:

for i in range(len(lst)):
    if "WILL ADEQUATELY PROTECT" in lst[i] and i < len(lst) - 1:
        print(lst[i+1])

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM