在Python中检查数字是否为回文数
假设我们有一个八进制或十进制形式的数字。如果是八进制形式,请检查它是否是回文。如果数字为十进制,则将其转换为八进制,然后检查其是否为回文。
因此,如果输入类似于num=178,则输出将为True,因为数字不是八进制形式(8不是八进制的有效符号,而是十进制有效),然后将其转换为262的八进制回文。
示例
让我们看下面的实现以更好地理解-
def is_all_under_8(num): while num: if (num % 10) >= 8: return False else: num = int(num / 10) return True def solve(num): base = 8 if(is_all_under_8(num) == False) else 10 oct_list = [] while num != 0: oct_list.append(num % base) num = int(num / base) j = len(oct_list)-1 k = 0 while k <= j: if oct_list[j] != oct_list[k]: return False j-=1 k+=1 return True num = 178 print(solve(num))
输入
178输出结果
True