文档章节

重拾Python 笔记五

六楼的雨
 六楼的雨
发布于 2013/05/10 09:11
字数 751
阅读 56
收藏 3
  1. Everything is Object.意味着函数也是对象。

  2. lambda表达式:func=lambda x,y:x+y,意味定义了一个函数,func,接受两个参数x和y,返回的是x和y的和。事实上lambda生成了一个函数对象赋给了func。

  3. 函数可以作为一个参数传给另一个函数。只传函数名即可。

     #这个函数同上例func函数
     def func(x,y):
         return x+y
     def fund(f,x,y):
         return f(x,y)
     print fund(func,13,23)
    
  4. map函数:内置函数,第一个参数是一个函数对象,之后的参数是列表。re=map(func,[1,2],[3,4]),map会将参数中的元素依次赋值给func,然后将返回的值添加到re这个列表中。func接受多少个参数,就有多少个列表参数,列表的长度代表re这个列表的长度。

  5. filter函数:内置函数,用来过滤列表。将列表中元素依次传给函数,当函数返回True的时候,列表中的对应元素会被保存。只有两个参数。

     def fune(a):
         if a%2==0:
             return True
         else
             return False
         return 
     rd=filter(fune, [1, 2, 3, 4, 5, 6, 7, 8])
    
  6. reduce函数:两个参数,第一个仍为函数对象,第二个仍为列表。依次将列表中前n个参数传给函数,然后将返回值放到剩下的列表最前端,继续赋值,一直到最后。

     #计算1到10共10个数字的和:
     rf=reduce((lambda x,y:x+y),[1,2,3,4,5,6,7,8,9,10])
    
  7. 异常处理:python中的异常处理与捕捉是: try: codeblock catch Exception:codeblock else: codeblock finally: codeblock

     a=[1,2,3,4,5,6,7,8,9]
     try:
         for i in range(100):
             print a[i]
     except Exception:
         print '越界',i
     else:
         print '其他异常'
     finally:
         print '无论如果都会运行的一句'
     print '看捕捉异常后是否还能运行到这里'
    
  8. 自己抛出的异常,raise StopIteration,python会利用StopIteration生成一个该类的一个对象,并抛出。

  9. 动态类型,即变量和它所指的对象分离,变量实际上只是指向对象的一个参考。多个变量指向同一个对象,如果其中一个变量a重新赋值,则不会影响其他变量的值,因为没有修改变量所指向的对象,只是将a重新指向了其他对象。如果其中一个变量b修改了所指向的对象的部分值,则其他变量的值也会受到影响,因为所有变量仍然指向当前对象,只是对象自身变了。

  10. 给函数传参数:如果定义了一个函数def fun(x),然后调用函数fun(a),意思为:让fun()的x也指向a所指向的对象,如果在fun()中x又指向了其他对象,a不会受影响,但是如果x修改了对象的部分值,然后a也会改变。

    def funf(x): print 'x', x x=100 def fung(y): print 'y:', y y[1]=100 a=10 funf(a) print a b=[1, 2, 3] fung(b) print b

© 著作权归作者所有

共有 人打赏支持
六楼的雨
粉丝 11
博文 13
码字总数 7240
作品 0
漯河
程序员
私信 提问
加载中

评论(2)

六楼的雨
六楼的雨

引用来自“华_琼”的评论

现在还在做Python开发么?还在北京否?很高兴认识你,如果还在做技术的话,有机会可以加QQ交流哦:1524583347

很不好意思,现在才看到,现在在做Java Web开发,接触Python的机会很少
华_琼
华_琼
现在还在做Python开发么?还在北京否?很高兴认识你,如果还在做技术的话,有机会可以加QQ交流哦:1524583347
重拾python爬虫之urllib3

是一个功能强大,条理清晰,用于HTTP客户端的Python库。许多Python的原生系统已经开始使用。Urllib3提供了很多python标准库里所没有的重要特性: 线程安全 连接池 客户端SSL/TLS验证 文件分部...

潇潇漓燃
07/08
0
0
分享我自己写的一套Python爬虫学习经验

最近在学习Python爬虫,感觉非常有意思,真的让生活可以方便很多。学习过程中我把一些学习的笔记总结下来,还记录了一些自己实际写的一些小爬虫,在这里跟大家一同分享,希望对Python爬虫感兴...

崔庆才
2015/02/23
3.7K
25
重拾python爬虫之urllib

学习一门技术,总是要踩好多坑,然后收货一大堆疑惑,这么多相似的方式该学哪个呢?外面公司常用的是哪个呢? 就比如python爬虫,可以作为网络请求的方式有四种,按时间顺序排: 第一种 ,这...

潇潇漓燃
07/08
0
0
【ZZ】Python(三):Karrigell与Python Web

听闻:Google内部只使用C/C++,Java和Python三种语言,足以见得Python在未来的发展前景。此前两篇关于Python的学习笔记分别介绍了一些基本知识和爬网页的相关技巧,这一篇着重介绍学习Pytho...

学徒1986
2013/07/29
0
0
程序员如何备战全国计算机二级(Python)考试?

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/csdnnews/article/details/84401067 我于1979年考上大学,读的是自动控制专业,当时对计算机产生了浓厚的兴趣...

CSDN资讯
11/23
0
0

没有更多内容

加载失败,请刷新页面

加载更多

使用正则表达式实现网页爬虫的思路详解

网页爬虫:就是一个程序用于在互联网中获取指定规则的数据。这篇文章主要介绍了使用正则表达式实现网页爬虫的思路详解,需要的朋友可以参考下 网页爬虫:就是一个程序用于在互联网中获取指定规...

前端小攻略
26分钟前
0
0
vue中锚点的三种方法

第一种: router.js中添加 mode: 'history', srcollBehavior(to,from,savedPosition){ if(to.hash){ return {selector:to.hash } } } 组件: <template><div><ul class="li......

peakedness丶
27分钟前
0
0
记一次面试最常见的10个Redis"刁难"问题

导读:在程序员面试过程中Redis相关的知识是常被问到的话题。作为一名在互联网技术行业打击过成百上千名的资深技术面试官,本文作者总结了面试过程中经常问到的问题。十分值得一读。 Redis在...

小刀爱编程
今天
20
0
TiDB Lab 诞生记 | TiDB Hackathon 优秀项目分享

本文由红凤凰粉凤凰粉红凤凰队的成员主笔,他们的项目 TiDB Lab 在本届 TiDB Hackathon 2018 中获得了二等奖。TiDB Lab 为 TiDB 培训体系增加了一个可以动态观测 TiDB / TiKV / PD 细节的动画...

TiDB
今天
5
0
当区块链遇到零知识证明

本文由云+社区发表 当区块链遇到零知识证明 什么是零知识证明 零知识证明的官方定义是能够在不向验证者任何有用的信息的情况下,使验证者相信某个论断是正确的。这个定义有点抽象,下面笔者举...

腾讯云加社区
今天
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部