刚接触编程的小伙伴想要深化自己的编程能力,刷题是必不可免的一件事,在这里我将和小伙伴们一起由简入繁地学习Python,感受Python简洁且强大的魅力。
以下是题目简介:
题目不难理解,就是编写一个可以辨别回文数的函数,提示中给出的是输入参数x的取值范围。
先分析示例,可以看出负数因为带符号,所以肯定不是回文数,该问题的难点就是如何让计算机能够从右向左读取数字。但是在Python中,数字是不可分割的,但是字符是可以分割的,如果将数字转换成字符,岂不是想怎么变就怎么变!
这时候就需要用到强制类型转换,将整型参数x换成字符型参数str。
x=str(x)
接下来就是让计算机从右往左读“数字”了,只需要用到Python中特有的切片操作,这是python中最常用最灵活的操作之一,想深入学习的小伙伴可以看我的另一篇关于切片的文章。
简单来说,切片就是对原有序列的一次拷贝,并且是任何一段你想要的部分。示例:
>>>a=[1,2,3,4,5,6,7]
>>>a[::]
[1,2,3,4,5,6,7]
>>>a[1:4:]
[2,3,4]
>>>a[:1:-1]
[7,6,5,4,3]
>>>a[5:1:-1]
[6,5,4,3]
切片是由两个冒号分隔的三个数字来实现的,第一个数字表示起始位置的下标,第二个数字是结束位置的下标(不包括),第三个数字是步长。可以发现不管拷贝多少份,原序列是不变的。
言归正传,结合强制类型转换和切片,就完成了这一题的解答。