Python学习笔记:类的总结
来源:互联网 发布:新闻出版网络培训 编辑:程序博客网 时间:2024/06/05 04:39
1.实例的方法属性可能被重新绑定到数据对象上, 通过命名习惯来避免冲突。
2.每个值都是对象, 可以用object.__class__打印类型信息
3.对C++程序员来说, Python里类的函数属性都是虚函数。
4.多继承的情况下, Python对名字的搜索是动态的, 为了支持super(), 同时线性化
访问, 钻石继承是提高查找效率。
5.定义私有成员, 防止在子类里被重写。
6.python for原理
for需要__iter__-->__next__-->StopIteration
7.Generator Expressions
Generator可以用来产生iterator
如:
Generator Expression很像List Comprehenssion但用的是小括号,更加内存友好
,用做函数参数可以让代码跟简洁。
2.每个值都是对象, 可以用object.__class__打印类型信息
3.对C++程序员来说, Python里类的函数属性都是虚函数。
4.多继承的情况下, Python对名字的搜索是动态的, 为了支持super(), 同时线性化
访问, 钻石继承是提高查找效率。
5.定义私有成员, 防止在子类里被重写。
class Mapping: def __init__(self, iterable): self.items_list = [] self.__update(iterable) def update(self, iterable): for item in iterable: self.items_list.append(item) __update = update # private copy of original update() methodclass MappingSubclass(Mapping): def update(self, keys, values): # provides new signature for update() # but does not break __init__() for item in zip(keys, values): self.items_list.append(item)
6.python for原理
for需要__iter__-->__next__-->StopIteration
class Reverse: """Iterator for looping over a sequence backwards.""" def __init__(self, data): self.data = data self.index = len(data) def __iter__(self): return self def __next__(self): if self.index == 0: raise StopIteration self.index = self.index - 1 return self.data[self.index] rev = Reverse('spam') for char in rev:
7.Generator Expressions
Generator可以用来产生iterator
如:
def reverse(data): for index in range(len(data)-1, -1, -1): yield data[index]
Generator Expression很像List Comprehenssion但用的是小括号,更加内存友好
,用做函数参数可以让代码跟简洁。
0 0
- Python学习笔记:类的总结
- Python 学习笔记-基础总结
- 【学习总结】Python基础知识笔记
- 【Python】Python学习笔记(类的继承)
- python 学习笔记 7 -- Python关键字总结
- python 学习笔记 -- Python关键字总结
- python 学习笔记 -- Python关键字总结
- Python学习笔记—PyQuery库的使用总结
- Python学习笔记—PyQuery库的使用总结
- Python 编码解码的问题(学习笔记+总结思考)
- 【Python学习笔记(三)】:爬虫用到的知识点总结
- 学习Python的总结
- python的学习总结
- python的学习笔记
- python的学习笔记
- Python的学习笔记
- Python学习总结-类
- Python学习笔记之数据类型总结
- 佛说爱情三:一切皆流,无物永驻
- 王学岗app widget窗口小部件(二)
- /bin/sh^M: bad interpreter: 没有那个文件或目录
- UDP
- Java面向对象(5)继承
- Python学习笔记:类的总结
- 生命周期
- 深度相机(六)--Kinect v2.0 手势样本库制作
- Tomcat启动时报 java.lang.OutOfMemoryError: Java heap space
- Java String对象问题
- Java热替换
- Java Collection内部关系梳理
- 佛说爱情四:缘散则散,缘聚则聚
- notepad++构建编译器调试器。vs自带编译器和gcc,gdb两个版本。