【Python】 回文数的四种解法
回文数就是指整数倒过来和原整数相等。
1
2
3
4
|
Example 1 : Input : 121 Output: true |
1
2
3
4
5
|
Example 2 : Input : - 121 Output: false Explanation: From left to right, it reads - 121. From right to left, it becomes 121 - . Therefore it is not a palindrome. |
1
2
3
4
5
|
Example 3 : Input : 10 Output: false Explanation: Reads 01 from right to left. Therefore it is not a palindrome. |
1:整数转字符串,通过下标对比确定该整数是否为回文数
1
2
3
4
5
|
str_x = str (x) for i in range ( 0 , int ( len (str_x) / 2 )): if str_x[i] ! = str_x[ - i - 1 ]: return False return True |
2:字符串切片操作,str[index:index:step],中括号里面分别为:字符起点、终点和步长
1
2
|
str_x = str (x) return str_x = = str_x[:: - 1 ] |
3:数学计算的方法,对比反转整数的值
1
2
3
4
5
6
7
8
|
if x< 0 : return False temp_x = x; palindromeNum = 0 while temp_x ! = 0 : palindromeNum = palindromeNum * 10 + temp_x % 10 temp_x / = 10 return palindromeNum = = x |
4:整数转字符串,反转字符串,对比反转后字符串与原字符串是否相等
1
2
3
4
5
|
str_x = str (x) str_y = "" for i in str_x: str_y = i + str_y return str_y = = str_x |
声明 欢迎转载,但请保留文章原始出处:) 博客园:https://www.cnblogs.com/chenxiaomeng/
如出现转载未声明 将追究法律责任~谢谢合作