python 实例详解map()函数、lambda函数、二进制移位--生成和2的次方有关的矩阵

本文详细介绍了Python的map()函数和lambda函数,并结合二进制移位讲解如何生成与2的次方相关的矩阵。通过实例解析需求,提供多种解答方法,包括利用map和lambda简化代码,以及传统函数方式。最后推荐了用于绘制NS图的工具DiagramDesigner。
摘要由CSDN通过智能技术生成

一、map()函数

1、map() 会根据提供的函数对指定序列做映射。第一个参数 function 以参数序列中的每一个元素调用 function 函数,返回包含每次 function 函数返回值的新列表。
  map(func,iterables)
2、其中iterables是迭代函数的意思,也就是要执行function的序列。在python 3x中,map函数生成的map() 生成的是迭代器不是list,直接运行会提示“<map at 0x1fb2382ce10>”一类的信息,如下第一行代码;如果要生成list,可以在map前加上list,即list(map()),如下第二行代码。

map(sum,([1,2],[3,4]))
list(map(sum,([1,2],[3,4])))

3、以下是更多map()的使用实例。

>>>def square(x) :            # 计算平方数
...     return x ** 2
... 
>>> map(square, [1,2,3,4,5])   # 计算列表各个元素的平方
[1, 4, 9, 16, 25]
>>> map(lambda x: x ** 2, [1, 2, 3, 4, 5])  # 使用 lambda 匿名函数
[1, 4, 9, 16, 25]
 
# 提供了两个列表,对相同位置的列表数据进行相加
>>> map(lambda x, y: x + y, [1, 3, 5, 7, 9], [2, 4, 6, 8, 10])
[3, 7, 11, 15, 19]

总之,在需要对序列的每一个元素进行操作时,map()是个不错的选择。

二、lambda函数

Lambda函数又称匿名函数,匿名函数就是没有名字的函数,在实际运用中主要用于只使用一次,功能较为简单的函数。
  lambda argument_list: expression
   argument_list即参数列表,expression指函数的具体表达。如最简单的lambda函数。

>>> lambda x :x+1
<function <lambda> at 0x000001E2703B9D90>
#因为lambda是匿名函数,如果单独运行它的话要给它一个名字。
>>> add = lambda x :x+1
>>> add(2)
3

关于具体的使用方法和场景,可以参见以下博客:
https://www.cnblogs.com/huangbiquan/p/8030298.html

三、二进制移位

“>>‘”和“<<”都是位运算,对二进制数进行移位操作。
①“<<” 是左移,末位补0,类比十进制数在末尾添0相当于原数乘以10,
x<<1是将x的二进制表示左移一位,相当于原数x乘2。
整数4在二进制下是100,4<<1左移1位变成1000(二进制),结果是8。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值