erlang (Lists 操作模块)学习笔记(三)

这篇具有很好参考价值的文章主要介绍了erlang (Lists 操作模块)学习笔记(三)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

suffix 

1> lists:suffix([1,2,3],[1,2,3,4]).
false
2> lists:suffix([2,3,4],[1,2,3,4]).  
true

 如果 List1 是 List2 的后缀,则返回 true,否则返回 false。

sum 

3> lists:sum([1,2,3,4]).           
10

 返回 List 中元素的总和。

 takewhile 

4> lists:takewhile(fun(X)->X<3 end,[1,2,3,4]).
[1,2]
5> lists:takewhile(fun(X)->X<3 end,[1,2,3,1,2,3,4]).
[1,2]
6> lists:takewhile(fun(X)->X<3 end,[2,3,1,2,3,4]).  
[2]

 从 List1 中获取元素 Elem,而 Pred(Elem) 返回 true,即 是,该函数返回其列表中最长的前缀 所有元素都满足谓语。Pred 函数必须 返回一个布尔值。

ukeymerge

9> lists:ukeymerge(1,[{1,2},{2,3,4}],[{1,2,3}]).
[{1,2},{2,3,4}]
10> lists:ukeymerge(1,[{4,2},{2,3,4}],[{1,2,3}]).
[{1,2,3},{4,2},{2,3,4}]

 返回通过合并 TupleList1 和 TupleList2 形成的排序列表。合并是在每个元组的第 N个元素上执行的。在计算此函数之前,必须对 TupleList1 和 TupleList2 进行键排序,没有重复项。 当两个元组比较相等时,将选取 TupleList1 中的元组,并将 删除 TupleList2 中的一个。

ukeysort 

12> lists:ukeysort(1,[{2,2},{2,3,4}]).          
[{2,2}]

 返回一个列表,其中包含列表 TupleList1 的排序元素,其中除第一个元组外的所有元素 删除了比较相等的元组。排序是 在元组的第 N个元素上执行。

umerge 

13> lists:umerge([1,2,3,4],[5,6,7,8]).          
[1,2,3,4,5,6,7,8]
14> lists:umerge([1,2,3,4],[4,5,6,7,8]).
[1,2,3,4,5,6,7,8]

 返回通过合并所有子列表形成的排序列表 的 ListOfLists。所有子列表必须排序,并且 在计算此函数之前不包含重复项。 当两个元素比较相等时,子列表中的元素 在ListOfLists中最低的位置是 已选择,另一个将被删除。

 umerge3

15> lists:umerge3([1,2,3,4],[4,5,6,7,8],[7,8,9,0]).
[1,2,3,4,5,6,7,8,9,0]

 返回通过合并 List1、List2 和 List3 形成的排序列表。所有 List1、List2 和 List3 都必须排序,并且不包含任何内容 在计算此函数之前进行重复。当两个 元素比较相等,List1 中的元素是 如果存在这样的元素,则选择,否则从 List2 中选择元素,删除另一个元素。

unzip3 

17> lists:unzip3([{1,q,c},{2,a,d}]).    
{[1,2],[q,a],[c,d]}

 将一个三元组的列表“解压缩”为三个列表,其中 第一个列表包含每个元组的第一个元素, 第二个列表包含每个元组的第二个元素,以及 第三个列表包含每个元组的第三个元素。

usort 

19> lists:usort([1,2,3,4,4,5,1]).
[1,2,3,4,5]

 返回一个列表,其中包含 List1 的排序元素,其中除 删除了比较相等的元素。

zip 

20> lists:zip([1,2,3],[a,b,c]).  
[{1,a},{2,b},{3,c}]

 将两个列表“压缩”成一个双元组列表, 其中,每个元组的第一个元素取自第一个元组 列表,第二个元素取自对应的 元素。

zip3 

23> lists:zip3([1,2,3],[a,b,c],[q,w,e]).
[{1,a,q},{2,b,w},{3,c,e}]

 “Zips”三个列表合并为一个列表 三元组,其中每个元组的第一个元素被取 从第一个列表中,第二个元素取自 第二个列表中的相应元素,以及第三个 元素取自第三个列表中的相应元素。

zipwith 

24> lists:zipwith(fun(X, Y) -> X+Y end, [1,2,3], [4,5,6]).
[5,7,9]

 将两个列表的元素合并为一个列表。 对于列表元素的每对 X、Y 从这两个列表中,结果列表中的元素是 Combine(X, Y)。

zipwith3 

25>  lists:zipwith3(fun(X, Y, Z) -> X+Y+Z end, [1,2,3], [4,5,6], [7,8,9]).
[12,15,18]
26> lists:zipwith3(fun(X, Y, Z) -> [X,Y,Z] end, [a,b,c], [x,y,z], [1,2,3]).
[[a,x,1],[b,y,2],[c,z,3]] 

 将三个列表的元素合并为一个 列表。对于每个三重 X、Y、 Z 来自三个列表的列表元素,元素 在结果列表中是 Combine(X, Y, Z)。文章来源地址https://www.toymoban.com/news/detail-823433.html

到了这里,关于erlang (Lists 操作模块)学习笔记(三)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【前端学习笔记2】javaScript基础

    是一种运行在客户端(服务器的编程语言) javacript分为行内JavaScript,内部JavaScript,外部JavaScript 内部JavaScript 直接写在html中body里面 alert(“hello,world”) 我们将script放在html文件的地步附近的原因是浏览器会按照代码在文件中的顺序加载html 如果先加载的JavaScript期望修改其

    2024年01月22日
    浏览(37)
  • 前端html学习笔记

    目录 一、文本标签 1. 单标签 2. 双标签 3. 重要的信息往下面放(自行判断) 4. 不重要的信息往下面放(自行判断) 二、图片标签 三、路径 1. 绝对路径 2.相对路径 (1) 同级目录: (2) 下级目录: (3) 上级目录 四、音频标签 五、视频标签 六、链接标签 1. target: 七、列表标签

    2024年01月24日
    浏览(48)
  • 前端学习笔记:JavaScript基础语法(ECMAScript)

    此博客参考b站:【黑马程序员前端JavaScript入门到精通全套视频教程,javascript核心进阶ES6语法、API、js高级等基础知识和实战教程】https://www.bilibili.com/video/BV1Y84y1L7Nn?p=76vd_source=06e5549bf018e111f4275c259292d0da 这份笔记适用于已经学过一门编程语言(最好是C语言)的同学,如果你没有

    2024年02月16日
    浏览(47)
  • 前端学习心得笔记之三(JavaScript篇)

    JavaScript一种运行在客户端(浏览器)上的解释性弱语言,是前端的重中之重,在计算机刚刚兴起的那个时代,这个由十天仓促编成的语言发展到现在也是令人吹嘘。 文件引用 在一个单独的js文件中也可以编写JavaScript代码,然后在HTML文件使用script标签进行引用以下为演示 m

    2024年04月23日
    浏览(49)
  • 前端学习心得笔记之一(HTML篇)

    对于python爬虫、数据分析等等一些实用技能的学习,小编思考良久,觉得前端知识的学习无比重要。就先去学习HTML的基础知识,希望可以帮到读者学习和了解HTML。 一个网页由哪些部分组成(网页标准)? (一)、结构:HTML (二)、表现:CSS  了解HTM (三)、行为:JavaS

    2024年02月22日
    浏览(49)
  • Html + Jquery + Vue前端学习笔记

    输入框里的值变了,data里的查询参数也会跟着变,这就是vue的绑定 @keyup.enter.native 这个代表键盘的回车事件,一般用来做查询 clearable 代表可清空 看一下整体效果 some方法判断数组中是否包含某个值 div富文本显示,u3000代表空格 上移,下移,删除,添加 控制两个按钮切换变

    2024年02月12日
    浏览(40)
  • erlang/OTP 平台(学习笔记)(三)

    借助于语言属性和基于复制的进程通信,Erlang程序天然就可以分布到多台计算机上。要问为什么,且让我们来看两个用Java或C++这类语言写成的进程,它们运作良好并以共享内存为通信手段。假设你已经搞定了锁的问题,一切精准而高效,但就在你试图将其中一个线程挪到另一

    2024年01月20日
    浏览(58)
  • erlang/OTP 平台(学习笔记)(四)

    Erlang shell 相较于日常惯用的系统,Erlang系统是一套更富交互性的环境。使用大部分编程语言时,要么把程序编译成OS可执行文件后运行,要么用解释器来执行一堆脚本文件或编译后的字节码文件。无论哪种情况,都是让程序一路跑到结束或崩溃为止,然后回到操作系统环境中

    2024年01月15日
    浏览(42)
  • 【JavaEE初阶】前端第四节.JavaScript入门学习笔记

    作者简介:大家好,我是未央; 博客首页:未央.303 系列专栏:Java测试开发 每日一句:人的一生,可以有所作为的时机只有一次,那就是现在!!! 前言 一、前置知识  1、JS 和 HTML 和 CSS 之间的关系 1.2 JS 的书写形式 1.2.1 内嵌式 1.2.2 行内式  1.2.3 外部式 1.2.4 扩展 1.2

    2024年02月08日
    浏览(51)
  • 分布式Erlang/OTP(学习笔记)(一)

    假设你在机器A和机器B上各跑着一个Simple Cache应用的实例。要是在机器A的缓存上插人一个键/值对之后,从机器B上也可以访问,那可就好了。显然,要达到这个目的,机器A必须以某种方式将相关信息告知给机器B。传递该信息的方式有很多,有些方式简单,有些方式复杂。但无

    2024年01月19日
    浏览(61)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包