Python简单leetcode问题,IndexError: string index out of range

问题描述 投票:0回答:1

我正在尝试解决这个 Leetcode 问题。我有这个代码:

class Solution:
    def isPalindrome(self, s: str) -> bool:
        palinString = s.replace (" ", "")
        palinString = re.sub(r'[^a-zA-Z]', '', palinString)
        palinString = palinString.lower()
        print(palinString[0])

但是我收到一条错误消息:

  Line 39 in <module> (Solution.py)
    _driver()
  Line 28 in _driver (Solution.py)
    ret = Solution().isPalindrome(param_1)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  Line 6 in isPalindrome (Solution.py)
    print(palinString[0])
          ~~~~~~~~~~~^^^
IndexError: string index out of range

似乎访问第一个元素有时有效,有时则无效。出了什么问题,如何解决?

python string indexoutofboundsexception
1个回答
0
投票

你可以尝试这个代码,这是一个很好的方法,你可以逐行理解。

   class Solution:
        def isPalindrome(self, s: str) -> bool:
            result = ''.join(i for i in s if i.isalnum())
            st = result[::-1].lower()
            if result.lower() == st:
                return True
© www.soinside.com 2019 - 2024. All rights reserved.