`
deepfuture
  • 浏览: 4400540 次
  • 性别: Icon_minigender_1
  • 来自: 湛江
博客专栏
073ec2a9-85b7-3ebf-a3bb-c6361e6c6f64
SQLite源码剖析
浏览量:80078
1591c4b8-62f1-3d3e-9551-25c77465da96
WIN32汇编语言学习应用...
浏览量:70048
F5390db6-59dd-338f-ba18-4e93943ff06a
神奇的perl
浏览量:103358
Dac44363-8a80-3836-99aa-f7b7780fa6e2
lucene等搜索引擎解析...
浏览量:285821
Ec49a563-4109-3c69-9c83-8f6d068ba113
深入lucene3.5源码...
浏览量:15014
9b99bfc2-19c2-3346-9100-7f8879c731ce
VB.NET并行与分布式编...
浏览量:67566
B1db2af3-06b3-35bb-ac08-59ff2d1324b4
silverlight 5...
浏览量:32153
4a56b548-ab3d-35af-a984-e0781d142c23
算法下午茶系列
浏览量:45991
社区版块
存档分类
最新评论

lisp-关于mapcar、apply、assoc 列表操作

 
阅读更多
0[2] (mapcar #'+ `(22 11 55) `(111 222 333))

(133 233 388)
0[2] (mapcar #'cdr `((22 11 55) (111 222 333)))

((11 55) (222 333))
0[2] (apply #'append `((22 11 55) (111 222 333)))

(22 11 55 111 222 333)
0[2]

 mapcar用于以第二个参数为运算符或函数,执行第二个参数,这个函数所需要的参数来自于mapcar的第二个参数到最后一个参数,将后面参数中列表中的每项取出,然后分别运算,形成新的列表,意味着对每个列表中的每项都会执行一次mapcar的第二个参数规定的函数。

apply则以第二个参数为函数或运算符,将后面参数中的列表中的每项取出后,仅做为参数供函数运算,不形成新的列表

0[5] (defun myadd(v1 v2) (mapcar '+ v1 v2))

STYLE-WARNING: redefining COMMON-LISP-USER::MYADD in DEFUN
MYADD
0[5] (mapcar `+ `(11 22) `(33 44))

(44 66)

 

0[5] (apply #'myadd `((11 22) (33 44)))

(44 66)
0[5]

 assoc相当于一种HASH操作,以参数为关键字,从列表中取出第一项元素,

* (defvar *mystudent* `((1 (liming 25)) (2 (wanghua 26))))

*MYSTUDENT*
* *mystudent*

((1 (LIMING 25)) (2 (WANGHUA 26)))

 

* (assoc `1 *mystudent*)

(1 (LIMING 25))
* (assoc `2 *mystudent*)

(2 (WANGHUA 26))

 注意 在LISP中最好 用TAB来分隔中文参数

* (defvar *mysts* `((男 (李明   29))(女	(王花   26)))
)

*MYSTS*
* *mysts*

((男 (李明 29)) (女 (王花 26)))
* (assoc `男	*mysts*)

(男 (李明 29))
* (assoc `女  *mysts*)

(女 (王花 26))
* (assoc `男 *mysts*)

(男 (李明 29))
* 

 

分享到:
评论

相关推荐

    AutoLisp-教程word版教程.rar

    这个“AutoLisp-教程word版教程.rar”压缩包文件包含了关于AutoLisp的详细教学材料,以Word文档的形式提供,方便用户学习和查阅。 在AutoLisp中,学习者会接触到以下几个核心知识点: 1. **基本概念**:首先,你...

    cad-lisp-3-表操作.LSP.lsp

    cad-lisp-3-表操作.LSP.lsp

    Common-Lisp-Actors, 通用Lisp的actor系统.zip

    Common-Lisp-Actors, 通用Lisp的actor系统 这是一个简单且易于使用的Actor系统,在。设置需要波尔多螺纹。http://common-lisp.net/project/bordeaux-threads/ 2. 加载 actors.lisp 并开始使用它。 如果你有 Quick

    common-lisp-the-language-second-edition.PDF

    common-lisp-the-language-second-edition.PDF

    lisp--:lisp-- 一个可以跑sicp解释器的lisp--

    从压缩包子文件的文件名称列表“lisp---master”来看,这可能是指项目源代码的主分支或根目录。通常,“master”分支代表了项目的主线开发,包含了最新的稳定代码。 综合以上信息,我们可以推测lisp--是一个用C语言...

    Lisp-flavoured C.zip

    "Lisp-flavoured C"是一个概念,它尝试将Lisp语言的一些核心特性融入到C语言之中,以创造一种全新的编程体验。这一主题揭示了编程语言设计的无限可能性,同时也为程序员提供了更高效、灵活的编程工具。 Lisp,全称...

    common-lisp-jupyter:用于Jupyter的Common Lisp内核以及用于构建Jupyter内核的库

    常见的lisp-jupyter 一个基于Jupyter的Common Lisp内核以及一个用于构建Jupyter内核的库,该库基于Robert Dodier的 ,该库基于Frederic Peschanski的 jupyter。 该文件描述了本地计算机上common-lisp-jupyter的安装...

    emacs-lisp-intro-2.04.tar.gz

    标题中的"emacs-lisp-intro-2.04.tar.gz"是一个典型的压缩文件名,它表明这个文件是一个关于Emacs Lisp的介绍性资料,并且版本号是2.04,格式为tar.gz。tar.gz是一种在Linux和Unix系统中常用的文件压缩格式,它先用...

    Common Lisp-对符号计算的温和介绍Common Lisp - A Gentle Introduction To Symbolic Computation

    在Common Lisp中,符号计算是一种重要的计算模式,它涉及到对符号(而非数值)进行操作。符号可以是变量名、函数名、数据结构名称等。这种计算方式允许程序员用更抽象的方式来表达问题,而不仅仅是通过具体的数字...

    Practical Common Lisp-1st-2005

    《Practical Common Lisp-1st-2005》是一本专注于Common Lisp编程语言的实用书籍,作者Peter Seibel通过这本书向读者展示了如何使用Common Lisp来解决真实世界中的问题,强调程序员作为工程师和艺术家的双重身份,而...

    The Elements of Artificial Intelligence Using Lisp - Steven L. Tanimoto.pdf

    The Elements of Artificial Intelligence Using Lisp - Steven L. Tanimoto.pdf The Elements of Artificial Intelligence Using Lisp - Steven L. Tanimoto.pdf

    Arduino-lisp-badge.zip

    Arduino-lisp-badge.zip,一种用lisp编程的手持式计算机,带有独立的键盘和显示器。lisp徽章,Arduino是一家开源软硬件公司和制造商社区。Arduino始于21世纪初,深受电子制造商的欢迎,Arduino通过开源系统提供了很多...

    On LISP Advanced Techniques for Common LISP - Paul Graham.pdf

    On LISP Advanced Techniques for Common LISP - Paul Graham.pdf

    lisp-share.rar_CAD LISP _DOSlib arx_lsp 查询 xdata_madair_wipeout

    本资料包"lisp-share.rar"汇集了CAD中的LISP语言、DOSlib、ARX以及查询Xdata、madair和wipeout等关键功能的LISP程序,旨在帮助工作人员快速掌握并应用这些功能,从而提高工作速度。 首先,LISP是一种古老的编程语言...

    LISP-calculators.zip_lisp

    在这个“LISP-calculators.zip_lisp”项目中,我们关注的是用LISP语言处理简单的算术表达式。 在LISP中,程序是函数的集合,而函数可以接受其他函数作为参数,返回函数作为结果,这种特性使得LISP非常适合用于符号...

    Lisp-music-player.rar_autolisp_autolisp程序_lisp_player

    标题中的“Lisp-music-player.rar”表明这是一个基于Lisp语言开发的音乐播放器软件,其源代码或可执行文件被压缩在RAR格式的文件中。RAR是一种流行的压缩格式,通常用于存储和分发多个文件,它允许用户将多个文件...

    通用LISP-交互式方法Common LISP - An Interactive Approach

    通过交互式计算机终端进行实验,以学习编程语言Lisp(LISt处理语言)的Common Lisp方言。

    AutoLISP-应用程序源代码.pdf

    AutoLISP应用程序源代码详解 AutoLISP是一种基于LISP编程语言的应用程序接口,主要用于与Autodesk AutoCAD等CAD软件集成,实现自动化处理和自定义功能。下面是对AutoLISP应用程序源代码的详细分析: 变量和函数 ...

    Python库 | slims-lisp-0.0.5.tar.gz

    资源分类:Python库 所属语言:Python 资源全名:slims-lisp-0.0.5.tar.gz 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059

Global site tag (gtag.js) - Google Analytics