Python判断回文数的三种方法实例
什么是回文数?
回文数是指正反两个方向都能够读通的数字,例如121,12321等。
方法一:将数字转为字符串,判断反转后是否相等
def is_palindrome_1(num):
# 将数字转为字符串
num_str = str(num)
# 反转字符串
reversed_str = num_str[::-1]
# 判断反转后的字符串是否与原字符串相等
if num_str == reversed_str:
return True
return False
示例:
>>> is_palindrome_1(121)
True
>>> is_palindrome_1(12321)
True
>>> is_palindrome_1(12345)
False
方法二:将数字转为列表,判断反转后是否相等
def is_palindrome_2(num):
# 将数字转为列表
num_list = list(str(num))
# 反转列表
reversed_list = num_list[::-1]
# 判断反转后的列表是否与原列表相等
if num_list == reversed_list:
return True
return False
示例:
>>> is_palindrome_2(121)
True
>>> is_palindrome_2(12321)
True
>>> is_palindrome_2(12345)
False
方法三:通过循环判断数字的每一位是否相同
def is_palindrome_3(num):
# 计算数字的位数
count = 0
temp = num
while temp > 0:
temp //= 10
count += 1
# 通过循环判断数字的每一位是否相同
i = 0
while i < count / 2:
if num // 10 ** (count - 1 - i) % 10 != num // 10 ** i % 10:
return False
i += 1
return True
示例:
>>> is_palindrome_3(121)
True
>>> is_palindrome_3(12321)
True
>>> is_palindrome_3(12345)
False
以上三种方法都可以用来判断回文数,其中方法一和方法二较简单常用,方法三虽然代码略长,但是更加直观易懂。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python判断回文数的三种方法实例 - Python技术站