有没有人知道DrRacket是否有相当于Python的pass
语句或任何其他可以用来指示执行代码什么也不做的成语?
答案 0 :(得分:1)
答案 1 :(得分:1)
这是一种做哈希示例的方法。
(hash-ref (hash) "not there" void)
但现在您必须检查是否返回void
或您想要的值。您可能还对hash-update!
或hash-update
(docs)感兴趣,它将现有密钥的检查与密钥不存在的情况下的默认行为结合起来。
答案 2 :(得分:1)
在我写这个答案时,你的问题在(a)你原来的问题和(b)你对奥斯卡答案的评论中有所分布:
这是一个想要使用可能存在或不存在的密钥索引哈希映射的情况,因此如果找到无密钥错误,我只想忽略该错误并继续执行。
从字面上理解最后一部分:处理 - 并有效“忽略”的一般方法 - 例外是with-handlers
:
(hash-ref (hash) "nothing")
;; hash-ref: no value found for key
;; key: "nothing"
(with-handlers ([exn:fail? (lambda (exn)
"hum dee dum")])
(hash-ref (hash) "nothing"))
;; "hum dee dum"
这似乎与Python pass
as described here没有任何关系,但也许pass
可以用来忽略Python中的错误;我只是不太了解它
答案 3 :(得分:0)
如果您可以处理语法表单,那么begin
可以正常工作。
(if <conditional> (begin))
如果你需要一个功能,那么这个工作
(lambda ignore #f)
你可能只是通过重新修改导致“无所事事”的逻辑来避免“无所事事”的需要。