阿里山QQ

导航

随笔分类 -  python 3.0

内容来源于python cookbook(第三版),仅供参考
序列的增量赋值 +=和*=
摘要:+=的实现是通过__iadd__实现的,如果类中没有实现__iadd__方法,那么就会调用__add__方法; 可变序列:调用的是__iadd__方法; 不可变序列:调用的是__add__方法; +和*操作都会先创建新的对象,然后做拼接操作; __iadd__不会创建新的序列,而是在原来的序列上做增 阅读全文

posted @ 2017-06-19 10:12 阿里山QQ 阅读(333) 评论(0) 推荐(0) 编辑

拆包
摘要:使用* 运算符把一个可迭代对象拆开作为函数的参数: 对于不感兴趣的数据,使用_占位: 在python3中,在迭代器中,使用*来处理剩余的元素 阅读全文

posted @ 2017-06-16 11:56 阿里山QQ 阅读(136) 评论(0) 推荐(0) 编辑

python2和python3关于列表推导的差别
摘要:看下面两个例子: python2的环境:列表中的同名变量名被替换了 python3:列表中的同名变量名没有被替换 总结:在python3环境,对于列表推导、生成器表达式、字典推导、set推导,python3会维护自己的局部变量,局部变量不会影响上下同名的变量; 阅读全文

posted @ 2017-06-16 11:30 阿里山QQ 阅读(158) 评论(0) 推荐(0) 编辑

关于在元祖中+=
摘要:先看一个例子: 这里产生了一个非常奇怪的现象:本来元祖的元素是不可变的,所以在操作的时候,报了TypeError错误,但是元祖的元素的确实被改变了; 实际上,在赋值语句的时候,如果我们把t[2]当做一个普通变量,因为其值是可变的对象,所以,赋值赋值操作可以完成,但是,当在重新赋值后的对象被放入元祖的 阅读全文

posted @ 2017-06-12 11:51 阿里山QQ 阅读(135) 评论(0) 推荐(0) 编辑

第一部分:数据结构和算法
摘要:1.6、实现字典中的键映射多个值 一般对于字典来说,键和值都是一一对应的,如果需要实现实现一个键对应多个值,那么就需要借助列表或者其他的数据结构实现,但是问题也来了,列表在插入数据的时候,需要事先进行判断,这样就会产生额外的工作,如何避免在判断值得数据类型的前提下,实现一对多呢? 1.7、实现字典排 阅读全文

posted @ 2016-10-23 21:27 阿里山QQ 阅读(173) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示