当前位置: 首页 > news >正文

空间网站链接怎么做/爱站网查询

空间网站链接怎么做,爱站网查询,长沙建设教育网,广告设计工作室" 灼灼桃花十里,取一朵放在心上,足矣 " 从小独栋升级为别墅区:函数式编程1、函数赋值给变量*1、类赋值给变量(拓展)2、函数作为函数参数3、lambda 表达式4、map() 和 filter()1、函数赋值给变量 在 Python …

在这里插入图片描述
" 灼灼桃花十里,取一朵放在心上,足矣 "

从小独栋升级为别墅区:函数式编程

  • 1、函数赋值给变量
  • *1、类赋值给变量(拓展)
  • 2、函数作为函数参数
  • 3、lambda 表达式
  • 4、map() 和 filter()

1、函数赋值给变量

在 Python 中,所有的对象都可以赋值给变量,包括函数

def say_hello(name):return name + ', hello!'f = say_hello
print(f('xiaohan'))
# output:xiaohan, hello!# 注意、这里被赋值的是函数本身、而不是函数的结果
# 赋值后、变量 f 与函数 say_hello 绑定
# f 也就相当于是 say_hello 的别名、完全可以用调用 say_hello 的方式来调用 f

*1、类赋值给变量(拓展)

class Orange:who_am_i = 'orange'banana = Orange
print(banana.who_am_i)
# output:orange# 注意、被赋值的是类本身、而不是类实例化后的对象
# 赋值后、变量 banana 与类 Orange 绑定、banana 也就相当于是 Orange 的别名
# 使用 banana 就相当于使用 Orange

2、函数作为函数参数

  1. 一切对象都可以作为函数的参数,包括另一个函数
  2. 接受函数作为参数的函数,称为高阶函数
# 从给定的数字列表中筛选数字、而具体的筛选策略由另一个函数决定并以参数的形式存在
def filter_nums(nums, want_it):return [n for n in nums if want_it(n)]# 函数 filter_nums 用来筛选数字、它接受两个参数
# nums 是包含所有待筛选数字的列表、want_it 是一个函数、用来决定某个数字是否保留def want_it(num):return num % 2 == 0
print(filter_nums([1,2,3,4,5],want_it))
# output:[2, 4]

3、lambda 表达式

  1. 在 Python 中,可以通过 lambda 表达式来便捷地定义一个功能简单的函数
  2. 这个函数只有实现没有名字,所以叫作匿名函数
# 语法
lambda 参数1, 参数2, 参数N: 函数实现# 使用上述表达式将定义一个匿名函数、这个匿名函数可接受若干参数
# 参数写在冒号前(:)、多个参数时用逗号分隔、其实现写在冒号后f = lambda x: x ** 2# 这个 lambda 表达式定义了一个匿名函数、这个匿名函数接受一个参数 x、返回 x ** 2 的计算结果
# 同时赋值语句将这个匿名函数赋值给了变量 f、注意 f 保存的是函数、而不是函数结果%1
f = lambda x: x ** 2
print(f(4))
# output:16# 通过观察上述示例可以发现、lambda 表达式中并没有 return 关键字
# 但结果被返回出来、是的、匿名函数的 函数实现 的执行结果就会作为它的返回值
# 无需使用 return 关键字# 一般情况下、我们不会像 f = lambda x: x ** 2 这样直接将匿名函数赋值给变量
# 然后去用这个变量、而是在需要将函数作为参数时、才去使用 lambda 表达式、这样就无需在函数调用前去定义另外一个函数了%2
def filter_nums(nums, want_it):return [n for n in nums if want_it(n)]
print(filter_nums([1,2,3,4,5],lambda  x : x % 2 == 0))
# output:[2, 4]

4、map() 和 filter()

Python 内置有两个非常好用的高阶函数 map() 和 filter()

  1. filter() 用于从可迭代对象中筛选元素
  2. map() 用于对可迭代对象中每一个元素逐一作处理
# 语法
filter(筛选函数, 可迭代对象)# filter() 依次对 可迭代对象 中的每个元素调用 筛选函数
# 如果返回值为 True、则当前这个元素会被保留、否则被排除
# 最终返回一个包含所有被保留元素的迭代器%1
# 从 ['a', 'b', 'cd', 'efg', 'hig', 'klmn', 'opqr'] 筛选出长度为奇数的字符串
print(list(filter(lambda x: len(x) % 2 == 1, ['a', 'b', 'cd', 'efg', 'hig', 'klmn', 'opqr'])))
# output:['a', 'b', 'efg', 'hig']
# list()将迭代器转换为列表# 语法
map(处理函数, 可迭代对象)# map() 依次对 可迭代对象 中的每个元素调用 处理函数
# 最终返回一个包含所有被处理过后的元素的迭代器# 将 ['a', 'b', 'cd', 'efg', 'hig', 'klmn', 'opqr'] 全部转换为大写
print(list(map(lambda x: x.upper(), ['a', 'b', 'cd', 'efg', 'hig', 'klmn', 'opqr'])))
# output:['A', 'B', 'CD', 'EFG', 'HIG', 'KLMN', 'OPQR']
# list()将迭代器转换为列表
http://www.lbrq.cn/news/1612657.html

相关文章:

  • 新网站如何做seo推广/做一个微信小程序需要多少钱
  • 做网站营销怎么去推广/江苏搜索引擎优化
  • 大连网站建设选网龙/云优化seo软件
  • 汉川市城乡建设局网站/青岛seo招聘
  • 山东泰安特产/优化关键词排名哪家好
  • 北京住房建设委员会官方网站/百度关键词排名代发
  • 宝塔做两个网站6/宁波关键词优化品牌
  • 网站建设系统 招标/品牌宣传活动策划方案
  • 上海网站开发制作公司/seo排名
  • 旅游类网站怎么做/南京seo公司
  • 贵德网站建设/推广渠道有哪些
  • 个人网站要备案么/外贸推广有哪些好的方式
  • 一家做公司点评网站/一份完整的品牌策划方案
  • 网站兼容9/优化设计答案大全英语
  • 网站百度抓取/cilimao磁力猫最新版地址
  • vs2010可以做动态网站吗/网站优化推广seo公司
  • 武进网站建设机构/广东seo
  • 合肥专业手机网站制作价格/上海自动seo
  • 手机芒果tv2016旧版/seo云优化如何
  • 上传网站到二级域名/电商运营培训班
  • 企查查企业信息查询网站/seo标签怎么优化
  • 商业空间设计的概念/赣州seo外包怎么收费
  • 建设银行短信带网站/网络优化包括
  • 安徽建设工程有限公司官网/搜狗seo
  • 网站建设后续的费用/数据分析一般用什么软件
  • 国外b站浏览器免费版/新乡搜索引擎优化
  • wordpress seo神器/soe搜索优化
  • 用asp做网站怎么美观/模板建站代理
  • 开发公司网站建设/免费收录链接网
  • 网站建设公司推荐/专注网站建设服务机构
  • 数字化转型驱动中小制造企业的质量管理升级
  • python:以支持向量机(SVM)为例,通过调整正则化参数C和核函数类型来控制欠拟合和过拟合
  • webpack面试题及详细答案80题(61-80)
  • python文件操作:读取文件内容read
  • Vue 详情模块 1
  • Linux 内存管理之 Rmap 反向映射