温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Python中的匿名函数如何使用

发布时间:2021-07-14 14:00:45 来源:亿速云 阅读:239 作者:Leah 栏目:大数据

本篇文章为大家展示了Python中的匿名函数如何使用,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

一. MATLAB中这样来定义一个匿名函数:

f = @(x1, x2, ...) exper

@后面的括号里面是自变量,然后跟一个空格(没有空格也行),然后跟着关于x1, x2, ...的表达式。

下面来举几个例子。

1.

>> f = @(x) x.^2 -1
f = 
    @(x)x.^2-1
>> x = -1:0.01:1;
>> y = f(x);
>> plot(x, y)

Python中的匿名函数如何使用

2.

%创建一个单词库
>> words={};
>> for i = 'a':1:'z'
words = [words, i];
end

%创建一个单词对应含义的库,他两按照位置对应
>> meaning = {}
meaning = 
     {}
>> for i = 1:length(word)
meaning{i} = i;
end

%找出单词对应的含义
>> word = 'f';
>> f = @(s) strcmp(s, word);
>> wordIndex = cellfun(f, words);
>> expalantation = meaning(wordIndex)
expalantation = 
    [6]

前面那两个for循环相当于建立了两个小小的单词数据库,词义是通过对应位置来关联。

到了后面,先输入单词'f',然后创建一个匿名函数f,f的自变量是s,这个匿名函数的功能是把s与输入的word进行比较,如果相同返回真。

然后到cellfun了,第一个参数是函数句柄,第二个参数是一个cell,把cell中的每一个元素都传给函数句柄对应的函数中。然后返回的wordIndex是一个逻辑数组,用它去索引出位置为真时对应的元素。

Python中的匿名函数如何使用

二. Python中的匿名函数,(lambda表达试)

f = lambda 参数 : 参数表达式

下面来举个简单的例子,其实和matlab中的也差不多

比如:画x^2 - 1 图像

import matplotlib.pyplot as plt
import numpy as np
x = np.arange(-1, 1, 0.01)
f = lambda x : x**2 - 1
y = f(x)
plt.plot(x,y)
plt.show()

Python中的匿名函数如何使用

Python中还有个类似于MATLAB中arrayfun和cellfun的东西,即map函数,它是把可迭代序列中的每一个元素作为函数的参数进行计算然后返回个map对象(是一个生成器),可以用list转化成列表。

所以上面的y可以写成list(map(f, x))

上述内容就是Python中的匿名函数如何使用,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI