do语句 还用于使用LISP执行迭代。它提供了一种结构化的迭代形式。
DO语句的语法
(do ((variable1 value1 updated-value1) (variable2 value2 updated-value2) (variable3 value3 updated-value3) ...) (test return-value) (s-expressions) )
计算每个变量的初始值并将其绑定到相应的变量,每个子句中的更新值对应于一个可选的UPDATE语句,该语句指定如何在每次迭代中更新变量的值。
在每次迭代之后,将对测试进行判断,如果它返回非nil或true,则对返回值进行判断并返回。
链接:https://www.learnfk.comhttps://www.learnfk.com/lisp/lisp-do.html
来源:LearnFk无涯教程网
最后一个s-expression是可选的,如果存在,它们将在每次迭代后执行,直到测试值返回TRUE为止。
创建一个名为main.lisp的新源代码文件,并在其中键入以下代码-
(do ((x 0 (+ 2 x)) (y 20 ( - y 2))) ((= x y)(- x y)) (format t "~% x=~d y=~d" x y) )
单击执行按钮或键入Ctrl+E时,LISP会立即执行它,并且返回的结果为-
x=0 y=20 x=2 y=18 x=4 y=16 x=6 y=14 x=8 y=12
祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)
Python实战 · 从0到1搭建直播视频平台 -〔Barry〕