FP风格迭代器操作的包装器
iterwrapper的Python项目详细描述
IterWrapper公司
这是python迭代器的一个包装器,它提供了一种类似于Rust的样式,以及其他方法,以提高迭代器操作的一致性和代码可读性。在
例如:
fromiterwrapperimportIterWrapperasiwl=(iw(range(0,10)).map(lambdax:x+1).filter(lambdax:x%2==0).fold(lambdac,x:c+x**2,d=0))print(l)# 220 = 2^2 + 4^2 + 6^2 + 8^2 + 10^2
与vanilla python中的等效表示法相比:
^{pr2}$另一个:
fromiterwrapperimportIterWrapperasiwl=(iw(range(0,10)).map(lambdax:x+1).filter(lambdax:x%2==0).map(str).collect(', '.join))print(l)# "2, 4, 6, 8, 10"# Comparing tol=', '.join(map(str,filter(lambdax:x%2==0,map(lambdax:x+1,range(0,10)))))# orr=range(0,10)m=map(lambdax:x+1,r)f=filter(lambdax:x%2==0,m)ms=map(str,f)l=', '.join(ms)
这样做的主要目的只是成为一个方便的包装器来操作迭代器,因此它具有很高的兼容性,因为大多数方法都是通过访问包装好的迭代器完成的,而且大多数方法只是将包装器用作容器。在
- 项目
标签: