回文计划可以做出哪些改进?

jok*_*ino 4 python palindrome

我只是在Python中学习编程以获得乐趣.我正在写一个回文程序,我想到了如何进一步改进它.

我想到的第一件事是防止程序必须双向浏览整个单词,因为我们只是检查回文.然后我意识到只要第一个和最后一个字符不匹配就可以打破循环.

然后我在课堂上实现它们,这样我就可以调用一个单词并返回true或false.

这就是该计划截至目前的情况:

class my_str(str):
        def is_palindrome(self):
                a_string = self.lower()
                length = len(self)
                for i in range(length/2):
                        if a_string[i] != a_string[-(i+1)]:
                                return False
                return True

this = my_str(raw_input("Enter a string: "))
print this.is_palindrome()
Run Code Online (Sandbox Code Playgroud)

我是否可以进行其他任何改进以提高效率?

NPE*_*NPE 9

我认为在Python中即兴编写回文检查功能的最佳方法如下:

def is_palindrome(s):
   return s == s[::-1]
Run Code Online (Sandbox Code Playgroud)

(lower()根据需要添加呼叫.)