首页 > 用一行代码高效的求一个列表的平方和

用一行代码高效的求一个列表的平方和

最近看到一个笔试题,考察的都是 Python 中的高阶函数 题目如下:用一行代码高效的求一个列表的平方和(不能用 sum 函数)

分析

1.先将列表中每个值作平方:

立即想到 map 函数,假设列表是 range(10),那么这个列表中平方是这样

map(lambda x: x**2 , range(10))
复制代码

因为题目要求一行代码,所以匿名函数 lamdba 是必须的!

2. 求和:

Python 中有个高阶函数 reduce 就是用来做累积的! 比如,求两个数的和,如下

reduce(lambda x,y: x+y)
复制代码

最后将两者合起来,结果如下:

result = reduce(lambda x, y: x+y, (map(lambda x: x ** 2, range(10))))
复制代码

还可以用 eval 函数

result = eval("+".join(str(i ** 2) for i in range(10)))
复制代码

转载于:https://juejin.im/post/5d1c62176fb9a07efb69a0f9

更多相关:

  • 草色新雨中, 松声晚窗里。之前我们学习 Power Query 都是用鼠标就完成了很多复杂的操作。虽然 PowerQuery 已经将大部分常用功能内置成到功能区。基本能完成我们大部分的报表自动化功能。但是总有些复杂的或者个性化的问题是开发团队没有预先想到的,这时我们就需要学习 M 语言。一、M 语言在哪里?M语言的函数公式有三个地...

  • 前言从2020年3月份开始,计划写一系列文档--《小白从零开始学编程》,记录自己从0开始学习的一些东西。第一个系列:python,计划从安装、环境搭建、基本语法、到利用Django和Flask两个当前最热的web框架完成一个小的项目第二个系列:可能会选择Go语言,也可能会选择Vue.js。具体情况待定,拭目以待吧。。。基本概念表达式表...

  • 1.1函数1.1.1什么是函数函数就是程序实现模块化的基本单元,一般实现某一功能的集合。函数名:就相当于是程序代码集合的名称参数:就是函数运算时需要参与运算的值被称作为参数函数体:程序的某个功能,进行一系列的逻辑运算return 返回值:函数的返回值能表示函数的运行结果或运行状态。1.1.2函数的作用函数是组织好的,可重复使用的,用来...

  • 原标题:基于Python建立深度神经网络!你学会了嘛?图1 神经网络构造的例子(符号说明:上标[l]表示与第l层;上标(i)表示第i个例子;下标i表示矢量第i项)单层神经网络图2 单层神经网络示例神经元模型是先计算一个线性函数(z=Wx+b),接着再计算一个激活函数。一般来说,神经元模型的输出值是a=g(Wx+b),其中g是激活函数(...

  • 在学习MySQL的时候你会发现,它有非常多的函数,在学习的时候没有侧重。小编刚开始学习的时候也会有这个感觉。不过,经过一段时间的学习之后,小编发现尽管函数有很多,但是常用的却只有那几个。今天小编就把常用的函数汇总一下,为大家能够能好的学习MySQL中的函数。MySQL常使用的函数大概有四类。时间函数、数学函数、字符函数、控制函数。让我...

  • THE START更新堪称轻量级MATLAB的一款软件最新版-Maplesoft Maple 2019.2 中文版。Maple是符号和数字计算环境,也是一种多范式编程语言,由Maplesoft开发,还涵盖了技术计算的其他方面,包括可视化,数据分析,矩阵计算和MATLAB连接。MapleSim工具箱添加了用于多域物理建模和代码生成的...

  • 同学们,你们在学习他人的代码,是否见过这样的代码 def main(): def user_info(gender): 当你还是个小萌新时,你一定会认为这是个很牛逼的语法。 当你有了一点基础时,你一定会想要了解这个语法,并且尝试去使用它。 那么今天,我们便来了解这个牛语法。 有了一点点的python基础,我们来看这段代...

  •     自从用了这些快捷键,鼓励师也不需要了,代码开发效率蹭蹭提升!!! ctrl+shift+[折叠代码 (这个比ctrl+k ctrl+l、ctrl+k ctr+j不知道好用多少倍!) ctrl+shift+]展开代码 ctrl+shift+T打开手贱不小心关掉的窗口 【推荐】ctrl+shift+O打开当前文件...

  • 在提交代码之前,建议最好先Fetch代码下来(如果有冲突,系统会提示),然后再操作Merge到本地分支,这样做是为了避免有其他人同时修改了当前分支,如果直接用Ctrl+T(pull代码)极有可能覆盖本地分支最新代码,安全起见先Fetch代码(Ctrl+Alt+Shift+1)——所谓:小心驶得万年船!...

  • 每次复制代码时,如果代码里有 // 这样的注释就容易让格式乱掉,通过下面的设置就可以避免这种情况。 粘贴代码时取消自动缩进 VIM在粘贴代码时会自动缩进,把代码搞得一团糟糕,甚至可能因为某行的一个注释造成后面的代码全部被注释掉,我知道有同学这个时候会用vi去打开文件再粘贴上去(鄙人以前就是这样),其实需要先设置一下 s...

  • 只需一段简短的代码即可摧毁其防线!!! screenfull.request=function(){};onblur=null 今天有朋友反映没办法复制题目和答案 传送门 ↓ 【杠精】解除问卷星平台模拟考试防作弊禁止选中文本复制以及右键菜单的方法 https://blog.csdn.net/qq_37860634/arti...

  • 1.SDK概述 复制相关的工程文件到HelloWorld里面 要在版本esp8266_nonos_sdk_v2.0.0_16_07_19上面开发,那么就要复制相应文件 然后打开IDE 导入HelloWorld到工程里面 创建3个文件,如下图 再从lib里面添加文件 复制到我的下面   复制app里面的内容 打...

  • 复制不包含隐藏文件: cp -R /home/usera/* /mnt/temp   复制包含隐藏文件   : cp -R /home/usera/. /mnt/temp     转载于:https://www.cnblogs.com/appinn/p/5019533.html...

  • 错误:没有找到cg.dll,因为这个应用程序未能启动。重新安装应用程序可能会修复此问题 解决方法:复制cg.dll到system32 、debug中 错误:没有找到cgGL.dll,因为这个应用程序未能启动。重新安装应用程序可能会修复此问题 解决方法:复制cggl.dll到debug下 错误:无法定位程序输入点_glutInitWit...

  • 2019独角兽企业重金招聘Python工程师标准>>> 说来惭愧,从Dos年代的练习五笔开始,就一直没有在cmd命令提示符窗口里复制过东西,只在里面粘贴过,却不知道也是可以复制的,可能是因为一直没有这个需求,也没有去研究过。直到今天晚上用tracert查了一下主机的跟踪路由,想把长长的域名里的内容复制到查询工具来查询,发现手...