Python--day27--几个内置方法:__repr__()/__str__()/__del__()/__call__()
repr方法() 双下方法__str__: 打印对象就相当于打印对象.__str__ __repr__(): __repr__是__str__的备胎,没有__str__的时候,就调用__repr__:(但__str__不是__repr__的备胎) 小结: #内置的方法有很多 不一定全都在object中: 比如int 时间是没有办法计算长度的,只有兼容性的方法才会被收录到object中 len方法计算学生数量: 析构函数__del__方法: 在删除一个对象之前进行一些收尾工作: __call__
chapter10.1、异常处理
异常处理 异常Exception 错误 Error 逻辑错误:算法写错了, 笔误:变量名错误或者语法错误 函数或类使用错误,也属于逻辑错误 大部分的错误都可以避免 异常Exception 本意就是意外情况,在没有错误的前提下,在某些情况下,会有意外,导致程序无法正常执行下去 例如open文件,已存在或已经创建,就是异常,或者访问网络文件,断网了,也是异常,本身就是意外。 异常不可避免 异常和错误 在高级编程语言中,一般都有错误和异常的概念,异常可以被捕获,错误
关于Arch Linux efibootmgr 命令行参数问题
相关链接: https://wiki.archlinux.org/index.php/EFISTUB 今天安装Arch Linux 在 efibootmgr创建启动项时,总是提示 UUID=xxxx not found 找不到设备的错误,无法启动系统 官方文档对这个命令的说明如下: 而经过我的反复验证,这里应该写UUID=, 而不是PARTUUID= 。 所以官方文档也可能有错啊。 I 服了 you! 害的我找了好几个小时的问题。shit! 最后,哪位兄台有闲心也可以帮我报给官方让他们修改下这
chapter10.3模块化
模块化 一般来说,编程语言中,库,包,模块是同一种概念,是代码组织方式 python只有模块的对象类型,但是为了模块化组织模块的便利,提供了包的概念 模块module,指的是Python的源代码文件。 包package,指的是模块组织在一起的包名同名的目录及其相关文件 导入语句 import模块,允许写成一行,完全导入 import ... as ... 模块别名 impor语句,会找到指定的模块,加载和初始化它,生成模块对象,找不到,抛出ImportError异常 在Import所在
MyBatis resultType 的使用
<resultMap type="Teachers" id="testResultMap">
<id column="id" property="ids"/>
<result column="name" property="names"/>
</resultMap>
<select id="testResultMap" resultMap="testResultMap" >
chapter10.2基础知识点补充
__slots__ 最简单的hash算法,取余,便于理解模型 字典为了提高查询效率,使用空间换时间 实例的属性都需要一个空间,里边只放一两个了浪费 解决数百万个对象问题,字典就太多了 此时就可以用slots解决,只要定义了__slots__,对象的字典消失 __slots__中没有的属性,对象不能添加 __slots__中的属性,可以在定义对象时先没有全部属性 尝试为实例增加动态属性时,会失败,为类增添类的属性不受影响。 class A:
X = 100
__
chapter9.1、魔术方法
魔术方法 python精华之一 特殊属性 __name__ 类,函数,方法等的名字 __modle__ 主模块,当前的模块__main__,其他模块调用返回模块对象 __class__ 相当于type,对象或类所属的类 __bases__ 返回基类的元组,顺序为基类列表中出现的顺序 __doc__ 文档,未定义为None __mro__ 类的mro,定义时就会计算并放在类的属性里的__mro__中 __dict__ 类或实例的属性,可写的字典,这里注意有些只读字典 查看属性 __dir__ 返
归程(NOIP 2018 游记)
(本文为 Friday, November 16, 2018 补叙,非日记。) Day 0 晚上复习了LCA。其实下午试机时就写了一遍,但是写得十分不熟练,于是晚上又写了两遍。后面两天的事实证明,还是树链剖分比较有用,比dfs序上做RMQ有用多了……(可惜我代码敲不出来,只能写写RMQ、倍增之类的。)还复习了图论的各种算法,数论和组合数基本处理。 晚上宿舍里人声鼎沸,于是去sq房里躲了一会儿……顺便和sq讨论学习了Euler函数的 \(O(n\log n)\) 求法,切了一道 模板题……满怀希
chapter9.4、魔术方法反射
反射 概述 运行时,区别于编译时,指的是程序被加载到内存中执行时 反射,reflection,指的是运行时获取类型定义信息 大部分动态语言提供了反射 一个对象运行时,像照镜子一样,反射出类型信息 自省也是反射的一种称呼 在Python中能够通过一个对象,找出其 type,class ,attrbute或method的能力,称为反射或者自省。 有反射能力的函数有: type() 返回类,相当于.__class__ isinstance(对象,类型) 返回bool值,判断类
chapter9.3、可调用对象,上下文管理
可调用对象 函数也是对象,函数可以调用,对象加上括号,就是对象调用自己的__call__方法,函数也是可调用对象 def foo():
print(foo.__module__,foo.__name__)
foo()
#等价于
foo.__call__() 都返回__main__ foo __call__ 类中定义的方法,使实例可以像函数一样调用 格式化返回坐标的点 class Point:
def __init__(self,x,y):
self.x =
poj1734 Sightseeing trip【最小环】
Sightseeing trip Time Limit: 1000MS Memory Limit: 65536K Total Submissions:8588 Accepted:3224 Special Judge Description There is a travel agency in Adelton town on Zanzibar island. It has decided to offer its clients, besides many other attractions,
Ubuntu16Server使用Intellij IDEA
1。Ubuntu是Server版本,没有桌面,因此首先要安装桌面: root@odl_ubuntu:~# apt-get install ubuntu-desktop 安装完成后执行 root@odl_ubuntu:~# startx 即可启动desktop。 因为本测试环境一直使用root用户,而desktop的登录界面没有输入用户名的地方,因此需要修改配置,允许输入用户名: root@odl_ubuntu:~# vim /usr/share/lightdm/lightdm.conf.d/5
chapter9.5、描述器
描述器 描述器的表现 用到三个魔术方法,__get__, __set__, __delete__ 方法签名如下 object.__get__(self,instance,owner) object.__set__(self,instance,value) object.__delete__(self,instance) self 指代当前实例,调用者 instance 是owner的实例 owner 是属性的所属的类 class A:
def __init__(self):
今日推荐
周排行