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管线 ...
随机推荐
- 怎么规划一个零基础学习Unity3D的“方法”或者“流程”?
具体出处:https://www.zhihu.com/question/35542990 我只是一个计算机相关专业毕业的,已经掌握了基础的C#并开发过.net的.目前突然心血来潮对unity3D有兴趣 ...
- vue 计算属性实现过滤关键词
效果 html <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <m ...
- 74CMS漏洞打包(从老博客转)
引子 这套CMS是上个月中做的审计,总共找到几个后台漏洞,可后台getshell,一个逻辑漏洞可任意发短信,还有一个前台注入漏洞.不过发到了某平台上之后,审核又要求我提交利用的poc,所以懒得发去了, ...
- Android开发 获取视频中的信息(例如预览图或视频时长) MediaMetadataRetriever媒体元数据检索器
前言 在Android里获取视频的信息主要依靠MediaMetadataRetriever实现 获取最佳视频预览图 所谓的最佳就是MediaMetadataRetriever自己计算的 /** * 获 ...
- Atcoder arc085
C:HSI 期望模型,不想说. #include<cstdio> using namespace std; typedef long long ll; int main() { int n ...
- 以太坊solidity智能合约语言学习资源整理
暂时看到篇文章写的不错,先收集下来,后面有机会自己也整理一个 Solidity语言学习(一)Solidity语言学习(二)——Solidity的安装与编译Solidity语言学习(三)——智能合约编程 ...
- IDEA使用Maven+Tomcat插件实现热部署
1 配置tomcat pom.xml <!-- tomcat7启动插件 --> <plugin> <groupId>org.apache.tomcat.maven& ...
- Tomasulo algorithm
https://en.wikipedia.org/wiki/Tomasulo_algorithm#Applications_and_legacy 1, what is Tomasulo algori ...
- 自然数幂求和——第二类Strling数
这个问题似乎有很多种求法,但感觉上第二类Strling数的做法是最方便的. 问题 求下面这个式子: ∑i=0nik\sum_{i=0}^n i^ki=0∑nik nnn的范围可以很大. 第二类Str ...
- Django之深入了解模板层
目录 模板语法 模板传值 过滤器 标签 自定义过滤器和标签 模板继承 模板导入 模板语法 前端模板的语法只记住两种就行了. {{ xxx }} 变量相关的 { % % } 逻辑相关的 模板传值 我们通 ...