def test_is_palindrome(self): TEST_DATA = [("", True), ("a", True), ("ab", False), ("aba", True), ("abba", True), ("abab", False)] for test in TEST_DATA: list = LinkedList(test[0]) print "list: %s" % list self.assertEquals(is_palindrome(list), test[1])
def longest_palindromic_substring(string): """ >>> longest_palindromic_substring("forgeeksskeegfor") 'geeksskeeg' >>> longest_palindromic_substring("l") 'l' >>> longest_palindromic_substring("no palindrome") '' """ if len(string) == 1: return string max_palindrome = "" max_length = 0 for i in range(len(string)): for j in range(i+1, len(string)): if is_palindrome(string[i:j+1]) and j-i > max_length and j+1-i != 1: max_palindrome = string[i:j+1] max_length = j+1-i return max_palindrome
def is_lychrel(n): count = 0 new = n while count <= 50: new = new + int(str(new)[::-1]) if is_palindrome(str(new)): return False count += 1 return True
def test_rand(self): from random import randint for t in range(30): chars = [chr(randint(97, 122)) for _ in range(randint(0, 20))] chars.extend(chars[randint(-2, -1)::-1]) for i in range(len(chars)): if randint(0, 1): chars[i] = chars[i].upper() s = ''.join(chars) self.assertEqual(is_palindrome(s), True) for t in range(30): chars = [chr(randint(97, 122)) for _ in range(randint(0, 40))] for i in range(len(chars)): if randint(0, 1): chars[i] = chars[i].upper() s = ''.join(chars) exp = s.lower() == s.lower()[::-1] self.assertEqual(is_palindrome(s), exp)
def has_palindrome(string): """Recebe uma string e verifica se em algum lugar dela há um palíndromo. :param string: string a ser analizada :var string2: variável onde pode conter o possível palíndromo :return: boolean""" from is_palindrome import is_palindrome for i in range(len(string)): string2 = string[i + 1:] for j in range(len(string2)): if string[i] == string2[j]: if is_palindrome(string[i] + string2[:j + 1]): return True return False
def longest_pal_substring(string): if len(string) == 1: return string max_pal = '' max_len = 0 for i in range(len(string)): for j in range(i +1, len(string)): if is_palindrome(string[i:j]) and j-i > max_len and j+1-i != 1: max_pal = string[i:j+1] max_len = j + 1 -i return max_pal
def test_rand(self): from random import choice, randint from string import ascii_letters for _ in range(100): test_case = "".join( choice(ascii_letters) for _ in range(randint(5, 20))) if randint(0, 1): test_case += test_case[::-1] reference = str(test_case) == str(test_case)[::-1] print("Testing: \"%s\", expecting: %s" % (test_case, reference)) self.assertEqual(is_palindrome(test_case), reference)
def Make_palindrome(str1, str2): """ makes a palindrome from 2 substrings of the input input str1, str2 strings output palindrome a string OR -1 if no palindrome was found """ longest_palindrome = '' substring_list1 = Make_substrings(str1) substring_list2 = Make_substrings(str2) #iterates over substring list1 and list2 #for each substring adds them together and checks if it is a palendrome for substring1 in substring_list1: for substring2 in substring_list2: possible_palindrome = substring1 + substring2 if is_palindrome(possible_palindrome) and len( possible_palindrome) > len(longest_palindrome): longest_palindrome = possible_palindrome return longest_palindrome
def test_is_palindrome_not_palindrome(): assert not is_palindrome("abc")
def test_is_palindrome_with_punctuation(): assert is_palindrome("Do geese see God?")
def test_is_palindrome_with_spaces(): assert is_palindrome("Never odd or even")
def test_is_palindrome(self): self.assertTrue(pali.is_palindrome("racecar")) self.assertTrue(pali.is_palindrome("ABBA")) self.assertFalse(pali.is_palindrome("crap"))
from is_palindrome import is_palindrome print(is_palindrome("level")) print(is_palindrome("redder")) print(is_palindrome("school")) print(is_palindrome("step on no pets"))
def test_is_palindrome_single_character(): assert is_palindrome("a")
def test_input_5(self): # Failure message: # expected is_palindrome('amanaplanacanalpanama') to equal True self.assertEqual(is_palindrome('amanaplanacanalpanama'), True)
def test_input_3(self): # Failure message: # expected is_palindrome('hannah') to equal True self.assertEqual(is_palindrome('hannah'), True)
def test_input_2(self): # Failure message: # expected is_palindrome('tacocat') to equal True self.assertEqual(is_palindrome('tacocat'), True)
def test_is_palindrome(self): string = 'radar' result = is_palindrome(string) self.assertEqual(result, True)
from is_palindrome import is_palindrome in_str = input( "Please enter text and I'll check to see if this is a palndrome: ") print("Is {} a palindrome? {}".format(in_str, is_palindrome(in_str)))
from is_palindrome import is_palindrome from base2base import dec2bin sum_out = 0 for i in range(1, 10**6): if is_palindrome(str(i)): if is_palindrome(dec2bin(i)): sum_out += i print(sum_out)
def test_is_palindrome(self): self.assertEqual(is_palindrome("Radar", "radaR"), True) self.assertEqual(is_palindrome("Status", "Stats"), False) self.assertEqual(is_palindrome("Madam", "madaM"), True) print("\nPassed is_palindrome with no errors!")
def test_is_palindrome_not_quite(): assert not is_palindrome("abab")
def test_is_palindrome_empty_string(): assert is_palindrome("")
def test(self): self.assertEqual(is_palindrome('a'), True) self.assertEqual(is_palindrome('aba'), True) self.assertEqual(is_palindrome('Abba'), True) self.assertEqual(is_palindrome('malam'), True) self.assertEqual(is_palindrome('walter'), False) self.assertEqual(is_palindrome('kodok'), True) self.assertEqual(is_palindrome('Kasue'), False) self.assertEqual(is_palindrome('hello'), False) self.assertEqual(is_palindrome('Bob'), True) self.assertEqual(is_palindrome('Madam'), True) self.assertEqual(is_palindrome('AbBa'), True) self.assertEqual(is_palindrome(''), True) self.assertEqual(is_palindrome("LAGrALLyiclOaEowNvmU"), False) self.assertEqual(is_palindrome("cWalaIYFGucHEhbnEH"), False) self.assertEqual( is_palindrome("smlWLKQYCrRUcqOLYuGGuYLOqcURrCYQKLWlms"), True) self.assertEqual(is_palindrome("dRjLeHcvvcHeLjRd"), True) self.assertEqual(is_palindrome("wvvqHAfrFWkIYygRQHTR"), False) self.assertEqual( is_palindrome("zuKWoAyeQNvhurRlYlUUlYlRruhvNQeyAoWKuz"), True) self.assertEqual(is_palindrome("QtFpQMSYPMnnMPYSMQpFtQ"), True) self.assertEqual(is_palindrome("muNcdggdcNum"), True) self.assertEqual(is_palindrome("TUkKinLuE"), False) self.assertEqual(is_palindrome("MaKeRSDisini"), False)
# from typing import Optional # def is_palindrome(looking_str: str, index: int = 0) -> bool: # """ # Checks if input string is Palindrome # >>> is_palindrome('mom') # True # # >>> is_palindrome('sassas') # True # # >>> is_palindrome('o') # True # """ # pass from is_palindrome import is_palindrome if __name__ == "__main__": assert is_palindrome('mom') assert is_palindrome('sassas') assert is_palindrome('o')
def test(self): self.assertEqual(is_palindrome("anna"), True) self.assertEqual(is_palindrome("walter"), False) self.assertEqual(is_palindrome(12321), True) self.assertEqual(is_palindrome(123456), False)
def is_ll_palindrome(ll): data_list = ll.list_to_data() return is_palindrome(data_list)
def test_is_palindrome_mixed_casing(): assert is_palindrome("Bob")
def test_input_1(self): # Failure message: # expected is_palindrome('testing') to equal False self.assertEqual(is_palindrome('testing'), False)
def testIsPalindromeStringValues(self): for word, number in self.stringValues: result = is_palindrome(word) self.assertEqual(number, result)
def test_is_palindrome(self): self.assertTrue(is_palindrome(self.l)) self.assertFalse(is_palindrome(self.l1))
def test_is_palindrome(): assert is_palindrome("anna") is True assert is_palindrome("walter") is False assert is_palindrome(12321) is True assert is_palindrome(123456) is False
def test_single_letter_returns_true(): assert is_palindrome("a") == True