Python3匿名函数用法示例

yipeiwu_com5年前Python基础

本文实例讲述了Python3匿名函数用法。分享给大家供大家参考,具体如下:

# -*- coding:utf-8 -*-
#!python3
# 匿名函数
# 1.不用给函数取名
# 2.使用方便,随时定义,随时使用
def calc_x(x):
  return x*x
rs = calc_x(10)
print (rs)
# lambda 参数列表:函数执行的简单逻辑代码
# lambda 返回一个函数对象,可以使用变量接收
a=lambda x:x*x
# 调用匿名函数
# 接收函数对象的变量(参数)
s = a(10)
print (s)
# 普通的函数,带两个参数的写法
def add(x,y):
  return x+y
rs = add(10,20)
print (rs)
# 带两个参数的匿名函数写法
b = lambda x,y:x+y
rs = b(10,20)
print (rs)
# 计算存放100个数字的列表的每一个数字的平方,返回一个新的列表
list1 = map(lambda x:x*x, [x for x in range(100)])
list1 = list(list1)
print (list1)
print (list(map(lambda x:x*x, [x for x in range(100)])))
'''
  匿名函数特点:
  1.不用取名称,因为给函数取名是比较头疼的一件事,特别是函数比较多的时候
  2.可以直接在使用的地方定义,如果需要修改,直接找到修改即可,方便以后代码的维护工作
  3.语法结构简单,不用使用def 函数名(参数名):这种方式定义,直接使用lambda 参数:返回值 定义即可
'''

运行结果:

100
100
30
30
[0, 1, 4, 9, 16, 25, 36, 49, 64, 81, 100, 121, 144, 169, 196, 225, 256, 289, 324, 361, 400, 441, 484, 529, 576, 625, 676, 729, 784, 841, 900, 961, 1024, 1089, 1156, 1225, 1296, 1369, 1444, 1521, 1600, 1681, 1764, 1849, 1936, 2025, 2116, 2209, 2304, 2401, 2500, 2601, 2704, 2809, 2916, 3025, 3136, 3249, 3364, 3481, 3600, 3721, 3844, 3969, 4096, 4225, 4356, 4489, 4624, 4761, 4900, 5041, 5184, 5329, 5476, 5625, 5776, 5929, 6084, 6241, 6400, 6561, 6724, 6889, 7056, 7225, 7396, 7569, 7744, 7921, 8100, 8281, 8464, 8649, 8836, 9025, 9216, 9409, 9604, 9801]
[0, 1, 4, 9, 16, 25, 36, 49, 64, 81, 100, 121, 144, 169, 196, 225, 256, 289, 324, 361, 400, 441, 484, 529, 576, 625, 676, 729, 784, 841, 900, 961, 1024, 1089, 1156, 1225, 1296, 1369, 1444, 1521, 1600, 1681, 1764, 1849, 1936, 2025, 2116, 2209, 2304, 2401, 2500, 2601, 2704, 2809, 2916, 3025, 3136, 3249, 3364, 3481, 3600, 3721, 3844, 3969, 4096, 4225, 4356, 4489, 4624, 4761, 4900, 5041, 5184, 5329, 5476, 5625, 5776, 5929, 6084, 6241, 6400, 6561, 6724, 6889, 7056, 7225, 7396, 7569, 7744, 7921, 8100, 8281, 8464, 8649, 8836, 9025, 9216, 9409, 9604, 9801]

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python函数使用技巧总结》、《Python数学运算技巧总结》、《Python数据结构与算法教程》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程

希望本文所述对大家Python程序设计有所帮助。

相关文章

Python3.x和Python2.x的区别介绍

1.性能Py3.0运行 pystone benchmark的速度比Py2.5慢30%。Guido认为Py3.0有极大的优化空间,在字符串和整形操作上可以取得很好的优化结果。Py3.1性能...

Python range、enumerate和zip函数用法详解

前言 range函数可创建一个整数列表。 如果需要知道当前元素在列表中的索引,推荐用enumerate代替range。 zip函数用于同时遍历多个迭代器。 一、range 函数 ra...

python实现超简单端口转发的方法

本文实例讲述了python实现超简单端口转发的方法。分享给大家供大家参考。具体如下: 代码非常简单,实现了简单的端口数据转发功能,用于真实环境还需要再修改一下。 复制代码 代码如下:#t...

Python调用C# Com dll组件实战教程

Python调用C# Com dll组件实战教程

之前公司有套C# AES加解密方案,但是方案加密用的是Rijndael类,而非AES的四种模式(ECB、CBC、CFB、OFB,这四种用的是RijndaelManaged类),Pytho...

selenium+python实现自动登陆QQ邮箱并发送邮件功能

selenium+python实现自动登陆QQ邮箱并发送邮件功能

本期做一个selenium详细实例,会把我在元素定位中遇到的一些阻塞和经验分享给大家。 (浏览器为Chrome) (如果只需要最终的完整代码,请直接跳转到文章最后) 浏览器打开QQ邮箱...