clojure - 使用列表中的参数调用函数
问题描述
我有一个需要 3 个参数的函数
(defn times-changed-answer [rid qid csv-file] ...some code)
对于使用 (record-id) rid 的用户来说,他用 (question-code) qid 更改了他的答案的次数。数据在 csv 文件中。
它有效,我已经为多个用户测试过它。现在我想为所有用户和所有问题调用这个函数。我有一个rids 列表和一个qids 列表。
(def rid-list '(1 2 4 5 10)
(def qid-list '(166 167 168 169 180 141)
我怎么能对所有用户调用这个函数来解决所有问题?列表的长度不同,第三个参数(文件)始终相同。
解决方案
我会使用for
列表理解——这取决于你在这里期望的结果;这里 eg [rid qid result]
为所有这些返回:
(for [rid rid-list
qid qid-list]
[rid qid (times-changed-answer rid quid csv-file)])
如果您想在地图中包含此内容,则可以在此范围内reduce
进行。
推荐阅读
- python-3.x - 如何通过 PyTorch 计算图输出损失梯度反向传播路径
- r - 在 R 中创建数据框导入多张工作表
- scala - 运行 TPCDS 基准数据集时出现 Spark 错误 - 找不到 dsdgen
- python - 为什么返回 [],而不是 ["stuff"]?
- reactjs - 边距底部作为键盘高度
- html - 即使单击网页上的其他位置,如何不失去对元素的关注?
- java - 我如何在 choco 求解器中获得变量总和
- wamp - 每次我重新启动 Surface 时 WAMP 服务器都不会变绿
- python - 以更有效的方式访问 3D 矩阵的所有奇数索引
- azure - Azure Active Directory 非管理员用户访问 Azure SQL 数据库