在字符串末尾查找符号对

2024-10-02 18:24:33 发布

您现在位置:Python中文网/ 问答频道 /正文

我必须写一个程序返回

  • -1表示空字符串
  • 0表示单个字符串
  • 如果最后两个字符匹配,则在最后一个索引旁边
  • 最后一个索引(如果它们不同)

例如:

    "tara" => 3
    "baa" => 1
    "adjsk" => 4
    "sthkk"=> 3
    "a" => 0

好像我把最后一个字符的索引返回错了:

def ends_with_pair(s):
    for i in range(len(s)-1):
        if s[i] == s[i+1]:
            return s.index(s[i])
        return s.index(s[-1])

还有,有没有办法让它更紧凑


Tags: 字符串in程序forindexreturndefwith
1条回答
网友
1楼 · 发布于 2024-10-02 18:24:33

你的逻辑太复杂了。这个问题只涉及最后两个字符;不需要在字符串中循环

  1. 检查管柱长度;如果是0,则返回-1。如果是1,则返回0
  2. 将最后两个字符相互检查s[-1] == s[-2]。如果它们相等,则返回len(s)-2;否则返回len(s)-1

我相信你能把它变成密码

相关问题 更多 >