Learning Python, 5th Edition (3)

  • 第1234页 Chapter 38: Managed Attributes
    个人理解两种Descriptor作用 1. Descriptor state :用于不同的client class,同一个client class不同的实例会共享修改后的属性值; 2. Instance state:用于同一个client class下不同的实例,不共享修改后的属性...
  • 第1234页 Chapter 38: Managed Attributes
    在这个例子中,X就是InstState的self,obj就是instance,通过赋值语句直接修改了obj._X,而调用obj.X会捕获一次__get__的调用 >>> obj=CalcAttrs() >>> obj.X=5 InstState set >>> obj...
  • 第1233页 Chapter 38: Managed Attributes
    刚开始接触OOP,很多规则需要加强学习: class CalcAttrs: X = DescState(2) # Descriptor class attr Y = 3 # Class attr def __init__(self): self.Z = 4 # Instance attr

C和指针 (3)

  • 第244页 第12章
    一般的教材都将首端插入特殊处理了,而作者发现共性之后直接作为一般性问题解决了。节省了代码量,更加直观,无需多引入第三个temp指针。其实只要知道如下等价关系就好了: *linkp == &Node
  • 第189页 第9章 字符串、字符和字节
    第9题: 自己用 <string.h> 里的strstr函数实现的查找字符串出现次数的实现 #include <stdio.h> #include <string.h> int count_chars(char const *str,char const *chars) { int count=0; cha...
  • 第168页 第八章 数组
    习题8.8 下面的声明取自某个源文件: int a[10]; int *b = a; 但在另一个不同的源文件中,却发现了这样的代码: extern int *a; extern int b[]; int x,y; ... x = a[3]; y = b[3]; 请解释,当两条赋值语句执行时...

Python学习手册 (1)

  • 第1038页 第32章,Decorators and Metaclasses: Part 1
    稍稍增加了一个函数,结合了闭包,发现decorator的功能很强大,不同函数分别计数引用次数: def tracer(func): # Remember original def oncall(*args): # On later calls oncall.calls += 1 print('call %s to %...

Python Cookbook (1)