小菜鸡的第一篇文章哈
万一您偶然刷到了,欢迎在评论区贡献您的宝贵意见,共同进步
首先来看一哈题目:
#You have to return the digits of this number within an array in reverse order.
可以看到,这道题目基本上是两个要求
一,将给出的int型数据反转
二,将反转后的数据转化为列表型,每个元素均为int
首先直接来贡献出菜鸡作者的最直接的代码
def digitize(n):
str_re=str(n)[::-1]
i=0
result=[]
while i<len(str_re):
result.insert(i,int(str_re[i]))
i=i+1
return result
1.将所给数据转化为字符串并通过[ : : -1]进行倒序排列
2.将反转后的字符串逐元素地插入一个新建的result中,得到最后的答案
值得注意的是,最后要求得到的列表中每个元素均为int型,所以要再逐元素插入的时候将每个元素转化为int。
接下来让我们看一哈各路大神们的解答,这里只看一下 clever最高的一个答案
def digitize(n):
return map(int, str(n)[::-1])
作为一个菜鸡,看到这个答案我都惊呆了好叭!!!
仔细一看其实他的思路和我的代码思路大差不差,首先都是将给定实参字符串化后反转,然后将每一个元素再int化
有关map函数的用法查阅度娘后得到
可见,这里可以使用map函数是因为最后要求得到的答案和 str(n) 均为列表型