ホームページ  >  記事  >  バックエンド開発  >  Python での lambda と def の使用法の違いの分析例

Python での lambda と def の使用法の違いの分析例

高洛峰
高洛峰オリジナル
2017-03-11 10:07:471412ブラウズ

この記事は主にPythonにおけるlambdaとdefの使い方の比較を紹介しており、lambdaとdefの違いと使い方のスキルを例とともに分析しています。必要な友人は参考にしてください。 Pythonでlambdaとdefを比較・分析するにはdefの使い方。皆さんの参考に共有してください。具体的な分析は次のとおりです:

1. Lambda は、def とは異なる匿名関数の作成に使用されます (def で作成された関数はすべて名前が付いています)。

2. Lambda は結果を識別子に割り当てませんが、def は関数の結果を識別子に割り当てます。

3. Lambda は式、def はステートメントです

サンプルプログラム:

>>> f1 = lambda x,y,z: x*2+y+z # lambda带有多个参数
>>> print f1(3,2,1)
9
>>> f3 = lambda i:i*2 # lambda带有一个参数
>>> print f3(7)
14
>>> def fun1(n):
...   return lambda m:m**n # m的n次方
...
>>> def fun2(m, n):
...   return m+n
...
>>> f2 = fun1(2) # 动态生成一个函数
>>> print f2(4)
16
>>> print fun2(3, (lambda x:x+1)(2)) # lambda用作函数参数
6
>>>

以上がPython での lambda と def の使用法の違いの分析例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。