标签:
为了用flask开发web应用,这两天就开始看了一点点Python。还没看到用Python写网站后台的那部分,就被其强大的数据处理能力和语法的灵活性吸引。肯定是我少见多怪,不过看到人家灵活使用Python的这些特性,写出一些奇技淫巧般的代码时,忍不住大赞。下面写一两个例子,一来加深自己的记忆,二来赞美一下Python。(代码借鉴了大神们的思想)
1.剔除1到1000内不是回文数的数,然后打印。
判断一个数是不是回文数,想必学过编程的都写过。当我还在想着取整数的每一位,再倒序加起来和原数比较是否相等时,看到了评论区大神一行代码搞定,疯了。。现在是在写Python,不是Java!!贴代码:
def is_palindrome(n): return str(n)==str(n)[::-1] output=filter(is_palindrome,range(1,1000)) print(list(output))
把整数转成字符串,灵活使用Python的切片,倒序字符串,比较。。。搞定!
2.格式化一个list里的名字:首字母大写,后面小写。
又是灵活运用切片。代码:
L1=["AdaM","sMith","JoBs","BRYANT"] def formatname(name): name=name[0].upper()+name[1:].lower() return name L2=map(formatname,L1) print(list(L2))
服!这用Java写一下要多少行。。。不是黑我大Java,我可是Java粉。。。不过Python方便太多。
***注:filter和map是Python提供的高阶函数,接收一个函数,一个列表作为参数,对列表里的每个元素,用接收的函数计算之。
标签:
原文地址:http://www.cnblogs.com/zj1994/p/4769586.html