美文网首页
高级语言python-2 11.20

高级语言python-2 11.20

作者: a荷包蛋 | 来源:发表于2017-11-20 21:52 被阅读0次

(一):属性property

1.私有属性添加getter和setter

2,用property升级get  set

                                 注意property里参数的位置不能颠倒()

3.用property取代get set

注意代码的顺序先get    后set

(二)生成器

定义:简单的说生成器就是一种,当你需要生成100多万个值时(或者更多),他可以一个一个帮你获取到,不会让你一下子拿到那么多,白白的浪费内存空间,每次可以用next向下取值。主要就是不浪费资源,如果你用python2的话,一下子取那么多值就在一直运行,容易死机

缺点:不能指定位置访问

有三种方法:

第一种方法:只要把一个列表生成式的[ ]改成( )

第二中方法:推算的算法比较复杂,用类似列表生成式的for循环无法实现的时候, 还可以用函数来实现。

第三种方法:用send实现动态方法

注意生成器第一次打印不会调用函数,所以必须调用一次在用send,传值

yield i就近似相当于pe,然后pe=ret。-------所以可以传值

(三)迭代器

注意:迭代器指针运行一次,向后偏移一位直到所有的元素被访问完结束

把可迭代但不是迭代器的升级为迭代器  iter( )

(四)闭包

闭包:原来局部变量在用完的时候就会被垃圾机制回收,用闭包之后可保存下来,继续使用

定义:在函数内部再定义一个函数,并且这个函数用到了外边函数的变量,那么将这个函数以及用到的一些变量称之为闭包

(五)装饰器

简单地说装饰器就是在不改变原来的代码(也就是不违背开闭原则)的基础上,拓展原来代码的功能。其实可以结合父类子类这样会更好理解

多层装饰器

注意:出现多层时,程序运行的时候先运行第二个装饰器。然后把第二个整体作为参数传给第一个装饰器。打印的时候按顺序来

装饰器示例:

无参函数:

有参函数:

装饰器中的return   

不加return,接收不到函数里的返回值,一般要加return

加return

相关文章

  • 高级语言python-2 11.20

    (一):属性property 1.私有属性添加getter和setter 2,用property升级get set...

  • Java 语言基础

    Java属于计算机高级语言,与其它高级语言如C,python,C#,PHP这些同属与高级一类语言。有高级语言就会有...

  • 第一天笔记

    # 第一天 ## 编程语言的进化 ###### 机器语言--汇编语言----高级语言 ## 高级语言 ######...

  • 第一天笔记

    编程语言的进化 机器语言--汇编语言----高级语言 高级语言 C C++ JVAV PHP JS 等等 发展...

  • 解释型语言与编译型语言

    计算机不能直接理解的高级语言,只能直接理解机器语言,所以必须把高级语言防疫成机器语言,计算机才能执行高级语言的编写...

  • 解释型语言python

    摘要 计算机不能直接理解高级语言,只能直接理解机器语言,所以必须要把高级语言翻译成机器语言,计算机才能执行高级语言...

  • 1. Java语言特征

    编程语言层级发展:机器语言 -> 汇编语言 -> 高级语言;高级语言,有以下几个分类特征: 面向过程、面向对象、面...

  • 我的书目

    基础篇: 语言(c, scheme): c:命令式语言的代表, 高级语言,最接近底层的高级语言。操作系统的实现语言...

  • 2016年10月17日兄弟会全栈工程师培训第一课笔记

    作者:唐嵘斐 编程语言的进化 机器语言--汇编语言--高级语言 高级语言 C、C++、java、php、js、as...

  • 解释执行与编译执行

    编程语言分为低级语言和高级语言,机器语言、汇编语言是低级语言,C、C++、java、python等是高级语言。机器...

网友评论

      本文标题:高级语言python-2 11.20

      本文链接:https://www.haomeiwen.com/subject/qzcbvxtx.html