Python中的匿名函数如何使用
本篇文章为大家展示了Python中的匿名函数如何使用,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
10年积累的网站设计、成都网站建设经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站制作后付款的网站建设流程,更有勃利免费网站建设让你可以放心的选择与我们合作。
一. 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)
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中的匿名函数,(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中还有个类似于MATLAB中arrayfun和cellfun的东西,即map函数,它是把可迭代序列中的每一个元素作为函数的参数进行计算然后返回个map对象(是一个生成器),可以用list转化成列表。
所以上面的y可以写成list(map(f, x))
上述内容就是Python中的匿名函数如何使用,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注创新互联行业资讯频道。
文章题目:Python中的匿名函数如何使用
转载来于:http://azwzsj.com/article/iighod.html