zoukankan      html  css  js  c++  java
  • 《Python 高级编程》简要读书笔记

    Python 高级编程

    列表推导

    
    li=[i for i in range(10) if i%2 == 0]
    [0, 2, 4, 6, 8]
    
    #enumerate的用法
    
    for i,j in enumerate(range(10)):
        print (i,j)
    

    迭代器

    #yield的用法
    def fabnaci():
        a,b=0,1
        while b<10:
            yield b
            a,b=b,a+b
    if __name__ == '__main__':
        ites=fabnaci()
        for i in ites:
            print (i)
    

    访问超类中的方法

    class a():
    
        def __init__(self):
            print ("a __init__ ")
    
    
    class b(a):
        def __init__(self):
            super(b, self).__init__()
            print ("b __init__")
    
    

    class person():
    
        __slots__ = ['age']
    
        def __init__(self,name,age):
            self.name=name
            self.age=age
    
    if __name__ == '__main__':
        p=person("libai",'100')#AttributeError: 'person' object has no attribute 'name'
        print(p.name) #AttributeError: 'person' object has no attribute 'name'
    
    
    class person():
    
        __slots__ = ['age']
    
        def __init__(self,age):
            self.age=age
    
    if __name__ == '__main__':
        p=person('100')
        print(p.age)
        
    
    

    元编程

    
    class gj(object):
        #必须返回一个实例
        def __new__(cls, *args, **kwargs):
            print("__new__ called")
            return  object.__new__(cls)
    
        def __init__(self):
            print ("__init__ called")
    
    
    if __name__ == '__main__':
        gj()
    

    Python中命名风格

    CamelCase(每个单词首字母大写)
    mixedCase(和CamelCase类似,第一个单词首字母小写)
    UPPERCASE(大写)ER_CASE_WITH_UNDEGSCORES(大写并且带下划线)
    lowercase(小写)和lower_case_with_underscores(小写且带下划线)
    前缀和后缀下划线,前后最下划线用来标记私有和特殊的元素
    

    命名指南

    使用is和has前缀命名布尔元素
    用复数形式命名序列元素
    用显式的名称命名字典
    避免通用名称
    避免现有名称
    

    PS:后续再加

  • 相关阅读:
    spring boot-11.全局捕获异常
    spring boot-10.国际化
    spring boot-9.对springMVC的支持
    spring boot-8.静态资源映射
    spring boot-7.日志系统
    spring boot-6.profile 多环境支持
    spring boot-4.配置文件
    spring boot-3.原理探究
    【C/C++】产生随机数
    【C/C++】获取当前系统时间
  • 原文地址:https://www.cnblogs.com/mlmy/p/13476155.html
Copyright © 2011-2022 走看看