2020年5月19日
摘要: class lazyproperty: def __init__(self,fun): self.fun=fun def __get__(self, instance, owner): print("get") print(' >',self) print(' >',instance) print( 阅读全文
posted @ 2020-05-19 13:00 秋雨的蝴蝶 阅读(198) 评论(0) 推荐(0) 编辑
摘要: def deco(**kwargs): def wrapper(obj): for key, val in kwargs.items(): setattr(obj, key, Typed(key, val)) return obj return wrapperclass Typed: def __i 阅读全文
posted @ 2020-05-19 12:38 秋雨的蝴蝶 阅读(199) 评论(0) 推荐(0) 编辑
摘要: 传统方式: open('a.txt')文件操作x.close()//关闭文件句柄,减少内存浪费 with open('a.txt') as f open是一个类 f是一个对象 获取了一个对象 赋值给对象“f” 上下文管理协议,即with语句,为了让一个对象兼容with语句,必须在这个对象的类中声明_ 阅读全文
posted @ 2020-05-19 12:34 秋雨的蝴蝶 阅读(415) 评论(0) 推荐(0) 编辑
  2020年4月25日
摘要: class Foo: def __get__(self, instance, owner): print(' >get方法') def __set__(self, instance, value): #self相当于Foo对象,instance相当于b1实例对象,value等于10 print(' 阅读全文
posted @ 2020-04-25 11:24 秋雨的蝴蝶 阅读(109) 评论(0) 推荐(0) 编辑
摘要: __doc__class Foo: '我是描述信息' pass class Bar(Foo): pass# print(Bar.__doc__) #该属性无法继承给子类 # print(Bar.__doc__) #该属性无法继承给子类 __module__ __class__from lib.aa 阅读全文
posted @ 2020-04-25 11:17 秋雨的蝴蝶 阅读(117) 评论(0) 推荐(0) 编辑
摘要: 1.__slots__是什么:是一个类变量,变量值可以是列表,元祖,或者可迭代对象,也可以是一个字符串(意味着所有实例只有一个数据属性)2.引子:使用点来访问属性本质就是在访问类或者对象的__dict__属性字典(类的字典是共享的,而每个实例的是独立的)3.为何使用__slots__:字典会占用大量 阅读全文
posted @ 2020-04-25 11:13 秋雨的蝴蝶 阅读(195) 评论(0) 推荐(0) 编辑
摘要: 定制__format__方法 format_dic={ 'ymd':'{0.year}{0.mon}{0.day}', 'm-d-y':'{0.mon}-{0.day}-{0.year}', 'y:m:d':'{0.year}:{0.mon}:{0.day}'}class Date: def __i 阅读全文
posted @ 2020-04-25 10:04 秋雨的蝴蝶 阅读(440) 评论(1) 推荐(0) 编辑
摘要: __str__(sekf) 类里没有定义这个方法,类的实例显示内存地址__str__(self) 类里有定义这个方法,类的实例显示具体属性值__repr__(self) 在解释器中有用str函数或者print函数 >obj.__str__()repr或者交互式解释器 >obj.__repr__()如 阅读全文
posted @ 2020-04-25 10:03 秋雨的蝴蝶 阅读(177) 评论(0) 推荐(0) 编辑
摘要: __getitem__(self,item)__setitem__(self,key,value)__delitem__(self,key) class Foo: def __getitem__(self, item): print('getitem',item) return self.__dic 阅读全文
posted @ 2020-04-25 10:02 秋雨的蝴蝶 阅读(282) 评论(0) 推荐(0) 编辑
  2020年4月21日
摘要: 高级语言:Python =》字节码低级语言:C、汇编 =》机器码pypy 这是用CPython开发的Python解释器路径 #!/usr/bin/env python编码 #-*- coding:utf-8 -*-utf8 能用多少位表示就用多少表示utf8:3字节gbk: 2字节shift+ctr 阅读全文
posted @ 2020-04-21 17:28 秋雨的蝴蝶 阅读(143) 评论(0) 推荐(0) 编辑