python - 在循环 python 中查找下一个迭代

标签 python string for-loop

我试图找出给定的字符串是否有 2 个目标字符相互跟随。所以本质上,我试图找出一个角色及其邻居是否是目标角色。我该怎么办?以下是我迄今为止所尝试过的。

target_list=["t","a","r","g","e","t"]

for char in some_string:
    if (char and some_string[some_string.index(char)+1]) in target_list:
        print ("correct")
    else:
        print ("incorrect")

预期输出:

  1. 如果 some_string="heytr"== "正确"
  2. 如果 some_string="hyt"== "不正确"
  3. 如果 some_string="heyt"== "不正确"

最佳答案

只需遍历索引并处理每对字符:

for i in range(len(some_string) - 1):
    if some_string[i] in target_list and some_string[i+1] in target_list:
        print ("correct")
        break

if i == len(some_string) - 1:
    print ("incorrect")

您也可以创建映射并查找相邻的真阳性:

m = [(char in target_list) for char in some_string]

for i in range(len(m) - 1):
    if m[i] and m[i+1]:
        print ("correct")
        break
if i == len(m) - 1:
    print ("incorrect")

关于python - 在循环 python 中查找下一个迭代,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48494110/

相关文章:

C++增强猫

ruby - 如何显示修改后的字符串?

Javascript(Typescript)嵌套for循环更新所有元素,而不仅仅是内部循环

python - 在 if/else 范围内编写的变量在外部未定义

python - 对象或闭包 - 何时使用?

python - 高级 Pandas 在 groupby 之后链接 : chain index. droplevel

java - 如何使用java验证字符串

r - for 循环与 ggplots 生成具有相同值但不同标题的图形

python - 用python写一个数据库类

python - PyQt5 中的可滚动 QLabel 图像