序
《流畅的python》是还在上学时就被安利的一本奇书,马克了很久一直没机会系统拜读。最近碰巧偶得第二版的pdf。经济周期的下行阶段正是用来学习充电的,于是乎打算捡起荒废许久的blog,读读书,写写字,蓄势待东风。
第一章
本章主要讲了自定义类时需要重载的几个重要方法。学到的新知识如下:
f字符串
是对于.format()函数的扩展,可以兼容各种基本数据类型的格式化,但需要注意:
1、单引号、双引号、三单引号、三双引号引号的配对使用;
2、字符’{‘用’{
{'表示,而不是转义;
有序的字典
python3.6之前的版本中,打印dict,kv对不是按照插入顺序排序,但从python3.6版本开始,dict变得有序了。原因是低层数据保存形式从一个稀疏二维表变成了一个稀疏一维数组和一个稠密二维数组。见https://blog.youkuaiyun.com/somenzz/article/details/120620348。
str__和__repr
__repr__用于表示一个对象(可视作该对象的官方文档,故应当客观准确);__str__用于建立该对象的字符串形式,可在print()中调用。
重载__repr__的同时会重载__str__。
len
内建数据类型调用len,会直接返回低层的一个C语言结构体的字段,因此速度极快。