python引用变量的顺序: 当前作用域局部变量->外层作用域变量->当前模块中的全局变量->python内置变量

python的

nonlocal关键字用来在函数或其他作用域中使用外层(非全局)变量。

nonlocal是在Python3.0中新增的关键字,python2.x不提供支持

解包参数:

在调用函数时使用*语法

def func(a,b,c,d):print(a,b,c,d)args = (1,2) + (3,4)if __name__ == '__main__':func(*args)

这个主要是在2.6中使用apply函数实现,但是在3.0之后就废弃了这个方法,不会调用任何函数

参数类型:

1、关键字参数

2、默认参数

3、任意参数 *,** 不过**必须在*的后面出现

lambda表达式

lambda arg1,arg2,arg3 : expression using arguments

函数式编程工具:

map、filter和reduce

map把每一项传递给函数并收集结果,filter手机那些函数返回一个True值的项,并且reduce通过对一个累加器和后续项应用函数计算一个单个的值,reduce是在Python3.0的functools模块中可用,而不是内置作用域中。

map(function,sequence)

把sequence中的值当参数逐个传给function,返回一个包含函数执行结果的list。

如果function有两个参数,即map(function,sequence1,sequence2)。

例子:

求1*1,2*2,3*3,4*4

map(lambda x:x*x,range(1,5))

返回值是[1,4,9,16]

reduce(function,sequence)

function接收的参数个数只能为2!

先把sequence中第一个值和第二个值当参数传给function,再把function的返回值和第三个值当参数传给

function,然后只返回一个结果。

例子:

求1到10的累加

reduce(lambda x,y:x+y,range(1,11))

返回值是55。

filter(function,sequence)

function的返回值只能是True或False!

把sequence中的值逐个当参数传给function,如果function(x)的返回值是True,就把x加到filter的返回值里面。一般来说filter的返回值是list,特殊情况如sequence是string或tuple,则返回值按照sequence的类型。

例子:

找出1到10之间的奇数

filter(lambda x:x%2!=0,range(1,11))

返回值

[1,3,5,7,9]

转载于:https://www.cnblogs.com/beiyeren/p/3838343.html

python知识点 07-11相关推荐

  1. std中稳定排序算法_源代码库已开放 | 哈工大硕士生用 Python 实现了 11 种经典数据降维算法...

    转自:AI开发者 网上关于各种降维算法的资料参差不齐,同时大部分不提供源代码.这里有个 GitHub 项目整理了使用 Python 实现了 11 种经典的数据抽取(数据降维)算法,包括:PCA.LDA ...

  2. python 最优化算法库_哈工大硕士生用?Python 实现了 11 种经典数据降维算法,源代码库已开放...

    雷锋网 AI 开发者按:网上关于各种降维算法的资料参差不齐,同时大部分不提供源代码.这里有个 GitHub 项目整理了使用 Python 实现了 11 种经典的数据抽取(数据降维)算法,包括:PCA. ...

  3. python进阶07 MySQL

    python进阶07 MySQL 一.MySQL基本结构 1.认识MySQL #MySQL不是数据库,它是数据库管理软件 #MySQL如何组织数据 #如何进入MySQL数据库 #其他注意事项#以表格的 ...

  4. 熬夜整理两万字Python知识点

    熬夜整理两万字Python知识点 第一章 变量和简单数据类型 1.1 变量 1.2 字符串 1.2.1 使用方法修改字符串大小 1.3 数 第二章 列表 2.1 列表概念 2.2 列表的相关操作 2. ...

  5. python爬虫精选11集(selenium进阶总结【selenium的cookies处理、ip代理、useragent替换】)

    python爬虫精选11集(selenium进阶总结) 一.selenium的介绍 1. selenium运行效果展示 1.1 chrome浏览器的运行效果 1.2 phantomjs无界面浏览器的运 ...

  6. 【python小课堂专栏】python小课堂11 - 变量篇

    python小课堂11 - 变量篇 前言 上周偷了点懒,周四到周末断更了,后来思考了下,前一阵儿的更新频率达到了日日更,虽然每章小知识都很详细..但是同学建议进度加快,emmm-然后我决定拉长更新周期 ...

  7. Python 知识点

                                          Python 知识点 1.对不定长参数的理解? 不定长参数有两种:*args和**kwargs: *args:是不定长参数, ...

  8. Python知识点以及相关练习题(四万余字总结)期末Python知识点总结

    Python知识点以及相关练习题 一.变量和类型 二.分支结构 三.循环结构 四.函数和模块的使用 五.字符串和常用数据结构 六.面向对象编程基础 七.面向对象进阶(含小游戏案例源码) 一.变量和类型 ...

  9. Python知识点总结和例题

    191205100555 方奕程 #1 Python知识点总结 (1)基础语法 我觉得学习一门新的编程语言最重要的就是先熟悉其语法,以下几个点我认为是比较大的误区: a.标识符(仅由数字.字母.下划线 ...

  10. 前辈说先学会了这些Python知识点,再谈学习人工智能、机器学习

    随着前面阿法尔go打败了围棋大师,让人工智能.机器学习大火了一把,然后学习人工智能和机器学习前提也需要掌握一定的Python知识点,那么学习这些前,我们究竟应该先掌握哪些Python知识点呢? 第一阶 ...

最新文章

  1. boost::contract模块实现private protected的测试程序
  2. XJOJ - 路径数(最短路+最短路路径数量)
  3. Zabbix 3.0 安装
  4. 红帽 jboss_红帽峰会2015所需的JBoss BPM内容指南
  5. flutter 生成文档_Flutter文件操作
  6. cmi码型变换matlab程序_58 张图,手把手教会你 Simscape Multibody 物理建模与刚体变换!...
  7. 如何提高实景三维智慧城市项目的建模精度和建模效果
  8. 编写高质量代码改善C#程序的157个建议——建议30:使用LINQ取代集合中的比较器和迭代器...
  9. 拓端tecdat|R语言资产配置: 季度战术资产配置策略研究
  10. vSphere 5.5 App HA学习-1、App HA概述
  11. 嵌入式工程师有发展前途吗?
  12. 利用tushare读取中国股市数据,并用绘制股票行情图形
  13. mysqloffset什么意思_重新认识Mysql的LIMIT OFFSET
  14. 新手卖家如何获得更多流量?这些关键词优化技巧你GET了吗
  15. 云计算实训之项目3-基于微信实现自动化监控报警
  16. Xcode 下载加速及安装指南
  17. 网络规模推荐系统的图卷积神经网络
  18. 如何下载b站视频 - 视频下载神器you-get的运用
  19. MM将成中国移动业务发展的战略平台
  20. 罗斯蒙特流量计电极的维护

热门文章

  1. 服务器状态监控之一背景介绍及解决方案建议
  2. always@( )列表里不能同时有电平敏感事件和边沿触发事件
  3. potplayer设置前进后退时间
  4. 获取客户端真实IP地址
  5. 软件需求阅读笔记之三
  6. DDD 领域驱动设计-如何 DDD?
  7. H264码流打包分析(精华)
  8. thinkphp框架开启页面gzip压缩
  9. NESPER的大体结构 z
  10. 禅道项目管理软件介绍