类似clojure的实用程序

clj的Python项目详细描述


CLJ

clj是一个python模块,用于执行过多clojure和 回到python的思考中,这些distinctdrop-whilecyclefirst等。

安装

pip install clj

用法

示例

;; Clojure(println (count (distinct (filter even?(map inc coll)))))
# Pythonfromcljimportcount,distinct,filter,inc,mapeven=lambdae:~e&1print(count(distinct(filter(even,map(inc,coll)))))

注意,count()对生成器中的两个序列都有效;在后一种情况下 它不会像len(list(g))那样在内存中加载所有内容。

核心理念

  • 默认情况下是懒惰的。所有函数都应该在任意迭代器和 返回发电机。
  • 这是Python。我们保留python的语义,而不是试图复制 python中的clojure(例如,0[]在clojure中逻辑上是正确的,但在clojure中是错误的 在python中,None不等同于空集合)。
  • 不要重新发明轮子。我们不重新实现内置函数 除非他们漏掉了什么:range因为没有 参数来产生一个无限序列;mapfilter在python 2中 因为他们不懒。

支架

一般的命名方案是:使用下划线而不是连字符;启动 如果其clojure对应项以?结尾,则使用is_函数。

序列

我们的目标是实现所有操作序列的clojure函数 (见the list here)。 它们都在iterable上工作,默认情况下返回生成器(python最接近的 相当于惰性序列)。我们不支持传感器。

Clojure^{}Comment
^{}^{}
^{}^{}
^{}^{}
^{}^{}
^{}^{
^{}^{}
^{}^{}Deprecated. Use Python’s ^{}
^{}-Use Python’s ^{}
^{}^{}
^{}^{}
^{}^{}
^{}^{}
^{}^{}
^{}-Use ^{}.
^{}-Use ^{}.
^{}-Use ^{}
^{}^{}
^{}^{}Deprecated. Use Python’s ^{}
^{}-Use ^{}.
^{}^{}
^{}^{}
^{}^{}Deprecated. Use Python’s ^{}
^{}^{}
^{}^{}
^{}^{}
^{}-Use Python’s ^{}.
^{}-Use Python’s built-in ^{}.
^{}-Use ^{}.
^{}^{}
^{}^{}
^{}^{}
^{}
^{}
^{}
^{}^{}
^{}-
^{}^{}
^{}^{}^{} becomes ^{}
^{}^{}
^{}-
^{}^{
^{}^{}
^{}^{}
^{}^{}
^{}^{}
^{}^{}
^{}-Use Python’s ^{}.
^{}^{}
^{}-
^{}-Use Python’s built-in ^{}.
^{}-Use Python’s ^{}.
^{}-Use Python’s ^{}.
^{}-Use Python’s ^{}.
^{}-
^{}-Use Python’s ^{}.
^{}^{}
^{}-Use the ^{} construct.
^{}-
^{}^{}
^{}^{}
^{}^{}
^{}^{}
^{}^{}
^{}-
^{}^{}
^{}-Use ^{}.
^{}^{}
^{}-Use Python’s ^{}.
^{}-
^{}-
^{}-Use Python’s ^{}.
^{}-Use Python’s ^{}.
^{}-
^{}
^{}
^{}^{}
^{}^{}
^{}^{}^{} becomes ^{}.
^{}^{}Prefer Python’s ^{} for everything but infinite generators.
^{}-Loop over an ^{}.
^{}-
^{}-Use Python’s ^{}.
^{}^{}
^{}-Use Python’s ^{}.
^{}-
^{}-
^{}-
^{}-Use Python’s ^{}.
^{}-Use Python’s ^{}.
^{}-Use ^{}.
^{}
^{}-Use Python’s ^{}.
^{}-Use Python’s ^{}.
^{}
^{}
^{}

我们还实现了count,尽可能使用python的len,并且 对于其他情况,在for循环上进行回退。

功能

我们还提供各种各样的功能以及 功能。

Clojure^{}Comment
^{}^{}
^{}-Use Python’s ^{}
^{}^{}
^{}^{}
^{}^{}
^{}^{}
^{}^{}
Clojure^{}Comment
^{}^{}
^{}^{}

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何从ImageIO中排除特定的TIFF读取器?   JavaJMockit和passbyreference。我们中一定有一个人错了(可能是我!)   java Android camera2放弃了牛轧糖的表面,但在棉花糖上工作   java按字符串中出现的顺序对字符数组进行排序   如何获取Groovy生成的java源代码   java无法使用AutoIT和Selenium Webdriver在所需位置/文件夹保存图像   java为什么我的冒泡排序代码会打印出这些奇怪的东西?   java JAXB:typesafeEnumMemberName=“generateName”是否可自定义?   Java编程输入:今天是星期天输出:星期天是今天   java不理解首个OOAD书的吉他示例   java如何从JformattedTextfield检索货币格式值   java可以从相同的源代码生成功能不同的可执行文件吗?