单行代码 之Python 3.5版
==========================================================================
震惊小伙伴的单行代码 Python篇
在网上看到有python2.7的单行代码(链接如上):
自学python3.x中,于是简单的想将2.x版翻译成3.x版。其中第7条实现还未成功。待了解xml后再尝试。
==========================================================================
1、让列表中的每个元素都乘以2
print(list(map(lambda x: x * 2, range(1,11))))
==========================================================================
2、求列表中的所有元素之和
print(sum(range(1,101)))
==========================================================================
3、判断一个字符串中是否存在某些词
wordlist = ["scala", "akka", "play framework", "sbt", "typesafe"] tweet = "This is a example tweet talking about scala and sbt" print(list(map(lambda x: x in tweet.split(),wordlist)))
==========================================================================
5、祝你生日快乐!
print(list(map(lambda x: "happy birthday to " + ("you" if x != 2 else "dear name"), range(4))))
==========================================================================
6. 过滤列表中的数值
from functools import reduce reduce(lambda a,c: (a[0]+[c],a[1]) if c > 60 else (a[0],a[1]+[c]), [49, 58, 76, 82, 88, 90],([],[]))
==========================================================================
7. 获取XML web service数据并分析
待定
from xml.dom.minidom import parse, parseString import urllib.request # 注意,我将它转换成XML格式化并打印出来 print(parse(urllib.request.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”算法
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,int(n/p)+1)))))