编程语言
首页 > 编程语言> > 告诉Python在到达最后一个字符时停止在for循环中进行比较

告诉Python在到达最后一个字符时停止在for循环中进行比较

作者:互联网

目前,我的代码正在通过一个巨大的字符串.它像这样比较字符串:

a = 0
for letter in my_str:
    a += 1
    if letter <= my_str[a]:

当我遇到“超出范围的字符串索引”错误时,它将一直进行比较,直到最后.我知道这是因为它正在尝试将字符串中的最后一个字符与下一个字符(不存在)进行比较.我觉得我已经尝试了一切.帮助表示赞赏.

编辑:似乎我刚刚想出了解决方案…无论如何,谢谢.

解决方法:

itertools开始使用成对配方

>>> from itertools import tee, izip
>>> def pairwise(iterable):
        "s -> (s0,s1), (s1,s2), (s2, s3), ..."
        a, b = tee(iterable)
        next(b, None)
        return izip(a, b)

>>> text = 'abc'
>>> for x, y in pairwise(text):
        if x <= y:
            pass

标签:python-2-7,python
来源: https://codeday.me/bug/20191201/2077936.html