python第四课
1.lambda()函数
可以直接定义一个函数,简化用def的定义。
>>> func=lambda x,y:x+y
>>> print(func(3,4))
7
>>> def func(x,y):
return(x+y)
>>> print(func(3,4))
7
2.函数作为参数传递
>>> def test(f,a,b):
print("test")
print(f(a,b))
>>> test(func,3,5)
test
8
>>> test((lambda x,y:x**2+y),6,9)
test
45
3.map()函数
函数的第一个参数为函数,将第二个或者第三个参数代入到第一个函数,返回值为循环对象,用list()可现实出来。
>>> re=map((lambda x:x+3),[1,3,5,6])
>>> print(re)
<map object at 0x02DF6F70>
>>> print(list(re))
[4, 6, 8, 9]
>>> re = map((lambda x,y: x+y),[1,2,3],[6,7,9])
>>> print(list(re))
[7, 9, 12]
4.filter()函数
这个函数第一个参数也是函数,作用于后面的元素参数,起到了筛选数据的作用。返回值也为循环队形,用list()显示出来。
>>> def func(a):
if a >100:
return(True)
else:
return(False)
>>> print(filter(func,[10,56,101,500]))
<filter object at 0x02DF6DD0>
>>> re=filter(func,[10,56,101,500])
>>> print(re)
<filter object at 0x02DF6F70>
>>> print(list(re))
[101, 500]
5.reduce()函数
第一个参数也是函数,但是要求能够接受另个参数,计算出来的结果最为洗一次循环的第一个参数,与后面元素作为第二个参数继续进行循环,有累计的意思在里面。reduce函数不能在3.0版本以后的python中直接使用,需要先引用
>>> import functools
>>> re=functools.reduce((lambda x,y:x+y),[1,2,5,7,9])
>>> print(re)
24
6.异常处理
try:
...
except exception1:
...
except exception2:
...
except:
...
else:
...
finally:
...raise StopIteration()
7.动态类型
动态类型是python的核心。不需要申明变量类型,python自动处理自动把不用的变量销毁,在python中处处是对象,在c语言中的变量也在python中是对象。列表和词典可以改变自身, 其他都都不可以改变自身。引用和对象的分离是动态类型的核心。所有程序操作层面的都是引用,对象是存储在内存实体中的,不会改变。但有两个特殊的对象例外,列表和词典,因为他们是有很多引用构成的,其中一个引用的改变
不会影响整个列表或者词典引用的改变。
python第四课的更多相关文章
- python第四课——线程、进程、协程
面试or笔试题:简述线程.进程.协程之间的关系? 内容概要 1.进程与线程优.缺点的比较 2.适用情况 3.线程 线程的创建 setDaemon join event RLock 队列 4.进程 创建 ...
- python第四课——运算符
一.python中的运算符: 什么是运算符? 就是计算机语言中用来参与运算的符号!! 1.算数运算符: 符号:+ - * / %(取余,取模) //(取整) **(开方) 2.比较运算符: 特点:比较 ...
- 小哈学Python第四课--运算符
运算符: 1.算数运算符: 2. 比较运算符 3.赋值运算符 4. 逻辑运算符: 5. 成员运算:
- Kali Linux Web 渗透测试视频教程—第十四课-arp欺骗、嗅探、dns欺骗、session劫持
Kali Linux Web 渗透测试视频教程—第十四课-arp欺骗.嗅探.dns欺骗.session劫持 文/玄魂 目录 Kali Linux Web 渗透测试—第十四课-arp欺骗.嗅探.dns欺 ...
- Kali Linux Web 渗透测试视频教程— 第四课 google hack 实战
Kali Linux Web 渗透测试— 第四课 google hack 实战 文/玄魂 目录 shellKali Linux Web 渗透测试— 第四课 google hack 实战 课程目录 Go ...
- NeHe OpenGL教程 第四十四课:3D光晕
转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线 ...
- NeHe OpenGL教程 第三十四课:地形
转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线 ...
- NeHe OpenGL教程 第二十四课:扩展
转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线 ...
- NeHe OpenGL教程 第十四课:图形字体
转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线 ...
随机推荐
- cocos2dx触摸响应
Layer其实继承了触控的接口. 所以只需要重写一些函数即可. 在helloword类中重写: virtual bool init(); /** Callback functi ...
- Python全栈开发:web框架们
Python的WEB框架 Bottle Bottle是一个快速.简洁.轻量级的基于WSIG的微型Web框架,此框架只由一个 .py 文件,除了Python的标准库外,其不依赖任何其他模块. 1 2 3 ...
- Android开发 获取视频中的信息(例如预览图或视频时长) MediaMetadataRetriever媒体元数据检索器
前言 在Android里获取视频的信息主要依靠MediaMetadataRetriever实现 获取最佳视频预览图 所谓的最佳就是MediaMetadataRetriever自己计算的 /** * 获 ...
- 二.ES6新的声明方式
前言: 以前我们在声明时只有一种方法,就是使用var来进行声明,ES6对声明的进行了扩展,现在可以有三种声明方式了. 字面理解ES6的三种声明方式: var:它是variable的简写,可以理解成变量 ...
- mysql之备份表和备份数据库
备份表 1.首先创建一个与原来一样的表 create table score2 like score; ###like就是将score表的结构拷贝过来,但是它并不执行数据:也就是说执行完上面的语句之后 ...
- springboot在工具类中添加service的方法,显示为空的解决方案
@Component// 1.将工具类声明为spring组件,这个必须不能忘 public class TestUtils { //2.自动注入 @Autowired private ItemServ ...
- EF Code First数据库映射规则及配置
EF Code First数据库映射规则主要包括以下方面: 1.表名及所有者映射 Data Annotation: 指定表名 1 using System.ComponentModel.DataAnn ...
- iOS之CAScrollLayer属性简介和使用
1.CAScrollLayer的简介 CAScrollLayer用于显示一个滑动图层的一部分,可以确定滑动方向和可视区域面积,限制不滑出区域外!相关属性如下:其中 /* Scroll the cont ...
- 详解Python编程中基本的数学计算使用
详解Python编程中基本的数学计算使用 在Python中,对数的规定比较简单,基本在小学数学水平即可理解. 那么,做为零基础学习这,也就从计算小学数学题目开始吧.因为从这里开始,数学的基础知识列位肯 ...
- 移动端开发框架Zepto.js
一.概述 Zepto.js是一个轻量的js库,它与jQuery有类似的API. zepto的设计目的是不到10K的通用库,快速下载,有一个熟悉的api-->精力专注在开发上. 流行起来的原因:轻 ...