zoukankan      html  css  js  c++  java
  • 转: 震惊小伙伴的单行代码 Python篇

    转:http://www.vaikan.com/10-python-one-liners-to-impress-your-friends/

        几年前,函数式编程的复兴正值巅峰,一篇介绍 Scala 中 10 个单行函数式代码的博文在网上走红。很快地,一系列使用其他语言实现这些单行代码的文章也随之出现,比如 Haskell, Ruby, Groovy, Clojure, Python, C#, F#, CoffeeScript

    每篇文章都令人印象深刻的揭示了这些语言中一些出色优秀的编程特征。编程高手们利用这些技巧提高编程速度、改进软件质量,编程初学者能从这些简洁的预防中学到各种编程语言的真谛。本《震惊小伙伴的单行代码系列》将逐一介绍这些各种编程语言单行代码文章,供大家学习参考。

    1、让列表中的每个元素都乘以2

    print map(lambda x: x * 2, range(1,11))

    2、求列表中的所有元素之和

    print sum(range(1,1001))

    3、判断一个字符串中是否存在某些词

    wordlist = ["scala", "akka", "play framework", "sbt", "typesafe"]
    tweet = "This is an example tweet talking about scala and sbt."
    
    print map(lambda x: x in tweet.split(),wordlist)

    4、读取文件

    print open("ten_one_liners.py").readlines()

    5、祝你生日快乐!

    print map(lambda x: "Happy Birthday to " + ("you" if x != 2 else "dear Name"),range(4))

    6. 过滤列表中的数值

    print reduce(lambda(a,b),c: (a+[c],b) if c > 60 else (a,b + [c]), [49, 58, 76, 82, 88, 90],([],[]))

    7. 获取XML web service数据并分析

    from xml.dom.minidom import parse, parseString
    import urllib2
    # 注意,我将它转换成XML格式化并打印出来
    print parse(urllib2.urlopen("http://search.twitter.com/search.atom?&q=python")).toprettyxml(encoding="utf-8")

    8. 找到列表中最小或最大的一个数字

    print min([14, 35, -7, 46, 98])
    print max([14, 35, -7, 46, 98])

    9. 并行处理

    import multiprocessing
    import math
    
    print list(multiprocessing.Pool(processes=4).map(math.exp,range(1,11)))

    10. “Sieve of Eratosthenes”算法

    Python里没有Sieve of Eratosthenes操作符,但这对于Python来说并不是难事。

    n = 50 # We want to find prime numbers between 2 and 50
    
    print sorted(set(range(2,n+1)).difference(set((p * f) for p in range(2,int(n**0.5) + 2) for f in range(2,(n/p)+1))))
  • 相关阅读:
    PHP用户注册邮箱验证激活帐号
    利用openssl进行RSA加密解密
    RSA算法使用介绍
    JS七种加密解密方法
    JS调用PHP 和 PHP调用JS的方法举例
    php注册登录时生成的验证码
    Joomla!网站扫描工具joomscan
    Xamarin XAML语言教程控件模板的模板绑定
    Xamarin.Forms使用Slider注意问题
    ASP.net 资源请求漏洞利用工具PadBuster
  • 原文地址:https://www.cnblogs.com/doinone/p/5486565.html
Copyright © 2011-2022 走看看