zoukankan      html  css  js  c++  java
  • Python笔记 【无序】 【五】

    描述符

    将某种特殊类型的类【只要实现了以下或其中一个】的实例指派给另一个类的属性

    1.__get__(self,instance,owner)//访问属性,返回属性的值

    2.__set__(self,instance,value)//将在属性分配【即赋值】中调用,不返回任何内容

    3.__delete__selfinstance//控制删除操作,不反回任何内容

    重写property

    Del ---delete

    练习

     

    定制序列【定制容器】 容器---序列【字符串,元组,列表】+映射类型【字典】

     

    练习  不可变类型 记录每个元素的访问次数

    *args表示参数可变数量

    self.values = [x for x in args]    //列表推导式的形式,把参数放到列表values

    接着第二行为字典的初始化操作,键值对---数值-访问次数【全化为0】的形式

    迭代器

    【提供迭代方法的容器称为迭代器】 ---as字典,字符串,元组

     

    常利用for循环!

    for i in “xxxxx”:

    Print(i)

    迭代器内置函数:

    iter(xxx)   容器对象调用iter()得到迭代器

    nextxxx返回下一个值,没有值可以返回了,python就抛出StopIteration的异常

     

    string = "ssada"

    a = iter(string)

     

    迭代器的魔法方法:

    __iter__()

    __next__()

    生成器【特殊的函数,可终端、暂停可暂时交还控制权】

     

    生成器【特殊的迭代器,是他的一个实现】

    函数中有yield语句,此函数被定义为生成器

    斐波那契数列:

    列表推导式:

    字典推导式:

    集合推导式:

    生成器推导式

     

    ()括起来的,,,,,,

    yield = return //不过有暂停功能

    模块【更高级的封装】

     

    即保存了一个.py的程序文件即是模块

     

    导入模块

    1.

    import xx

    xx.yy() ----使用导入模块中的方法

    2.

    form 模块名 import 函数名

    yy()

    3.

    import 模块名 as  新名字

    x.yy() ----使用导入模块中的方法

    __name____main__、搜索路径和包

    可以在每个模块后编写测试方法 ---

    def test():

        ……

    test() //调用

    防止模块中测试方法在主程序中被使用显示

    __name__

    '__main__' //主程序中如此显示

    xx.__name__

    '显示模块名' //模块中如此显示

    搜索路径

     

    import 包名.模块名

  • 相关阅读:
    课程总结第十一周
    用户场景分析
    团队冲刺10
    课程总结第十周
    团队冲刺09
    梦断代码阅读笔记03
    转发和重定向的区别
    request
    servletConfig
    servlet
  • 原文地址:https://www.cnblogs.com/expedition/p/10700141.html
Copyright © 2011-2022 走看看