我正在尝试使用 EDN 在简单的 Python 服务器和使用 ClojureScript 编写的浏览器应用程序之间进行通信。
因此服务器需要生成并返回EDN格式的块给浏览器。
我已经安装了https://github.com/swaroopch/edn_format,它似乎是推荐的 Python EDN 库。
但我希望能够生成一个使用 Clojure 符号作为键的映射。例如。{:a 1 :b 2}
但是,如果我创建一个 Python 字典{"a":1, "b":2}并将其传递给 dumps 函数,则最终的 EDN 将键保留为字符串,而不是符号。
:symbols显然Python中没有。但是有没有办法说服 edn_format.dumps 将字典字符串键转换为它们?或者是否有更好的 Python edn 库可以做到这一点?
我正在尝试弄清楚如何在 Flutter 中使用 TextEditor。
我有“卡片编辑器”(基本上我希望能够处理相当于一段文本的内容)
new EditableText(
autofocus: true,
maxLines: null,
backgroundCursorColor: Colors.amber,
cursorColor: Colors.green,
style: TextStyle(),
focusNode: FocusNode(),
controller: controller,
onSubmitted: (val) {
_addCard(val);
Navigator.pop(context);
},
)
Run Code Online (Sandbox Code Playgroud)
我根据 TextField 的示例进行了改编。
但我有几个问题。
首先,当我打字时,它似乎没有显示任何内容。光标移动,但看不到任何文本。当没有明确的样式时这是默认的吗?
其次,如何触发提交?对于文本字段,CR / Enter 按钮可以执行此操作。显然我明白为什么你不一定想要 EditableText 但我应该做什么呢?
第三,我需要能够将默认文本放入此小部件中。我尝试向 EditableText 添加“值”属性,但这似乎不正确。有什么方法可以做到这一点?
我一直在Django做一些黑客攻击.我从settings.py调用我的更改,因为我认为此操作先于其他任何操作.
但是,我刚刚遇到这种情况,这对我不起作用.那么,在 settings.py 之后还有另一个地方,我可以保证在服务器开始处理任何请求之前它总是会运行吗?
从Java程序调用Clojure库.我得到了一个IPersistentMap.
键是Clojure关键字,如:名称等.
但似乎我不能只做一个
map.valAt(":name");
Run Code Online (Sandbox Code Playgroud)
用Java来解决它.我猜这是因为键不是普通的java字符串.那他们是什么?如何从IPersistentMap中提取数据?
在Clojure中,我有一个列表
[a, b, c, d]
Run Code Online (Sandbox Code Playgroud)
我想从它中删除一个新的无限元组列表
[ [a,b,c], [b,c,d], [c,d,a], [d,a,b], [a,b,c] ... ]
Run Code Online (Sandbox Code Playgroud)
我试图通过内置的seq函数找出如何以纯函数方式执行此操作.
这是直截了当的,我还没有破解它?或者它实际上是某种难题?(在其他语言中,我会编写自己的循环迭代器并跟踪很多状态.)
更新:此外,为什么有人投票这个?
我看到有一种方法可以测试函数是否抛出C类异常.但是有没有办法测试函数是否抛出任何异常.或断言它不应该抛出异常?
我刚开始学习Racket-lang,我想编写一个从终端读取的简单程序,对输入执行操作并做出响应.
这是Python中的程序:
while True :
l = raw_input()
print somefunction(l)
Run Code Online (Sandbox Code Playgroud)
我应该如何在Racket中写出相应的内容?
我正在尝试在Racket中制作一个简单的书签web应用程序.
这意味着收到一个网址作为CGI参数,而现在,我只是想通过反映它来确认我收到它.
(define (start request)
(response/xexpr
(let* ([bindings (request-bindings request)]
[url (if (exists-binding? 'url bindings)
(extract-binding/single 'url bindings)
"NO URL")])
`(html
(head (title "TITLE"))
(body (h2 "TITLE")
(p "URL = " url))
))))
Run Code Online (Sandbox Code Playgroud)
但是,而不是看到我期望看到的...这是一个包含的页面
URL = http://google.com
Run Code Online (Sandbox Code Playgroud)
我正在看
URL = &url;
Run Code Online (Sandbox Code Playgroud)
这表明url在xexpr中被字面引用(被视为实体),而不是被评估为变量.
那么我做错了什么?如何评估网址?
我只是想向某人展示懒惰,我写了一个简单的递归函数来处理一个列表.
我认为在无限列表中它会很好.但突然间我发生了"过多的递归"内部错误.
咦?我总是编写代码来做那种事情.有什么问题?
但是,当然,通常我使用内置函数map作为其他列表处理函数的基础.这次我试图编写自己的递归遍历.当然,这不可行.
这是我写的.
(defn q [xs]
(if (empty? xs) ()
(cons (* (first xs) (first xs)) (q (rest xs)) )))
(take 10 (q (cycle '(1 2 3 4))))
Run Code Online (Sandbox Code Playgroud)
那么,实际上我是如何编写自己的遍历函数来处理Clojure中的惰性数据结构的呢?是否存在某种"收益率"的等价物?