Python 的小技巧很多, 入门容易精通难! 在进阶的路上, 有没有什么好的技巧和好的方法, 就是不断总结, 不断记笔记! 尤其是好的用法, 就像写作文一样, 好的名言警句要多背诵一些, 写作的时候, 肚子里的墨水多了才能才思泉涌, 写出更多的好代码.
1. 遍历一个序列
评: Python 中的序列是使用频率非常高的, 很多传统语言过来的, 习惯用下标遍历, Python 中序列是可迭代的, 直接 for 即可!
2. 遍历倒序
评: 用 range 的负数来遍历, 不如直接反转遍历
3. 遍历 2 个 collection
评: zip 真的不错, 尤其是处理 2 个序列非常简洁, 在 Python2.x 还需要用 itertool.izip 来返回迭代器, 现在 Py3 可以直接使用 zip 返回迭代器.
4. 遍历排序的序列
评: sorted 这个函数非常重要, 尤其是入门的菜鸟一定要记住这个函数, 很多妙的用法都跟它有关.
5. 自定义排序
评: 排序是一个时时刻刻都遇到的文章, 有列表排序, 字典排序, 排序里面的 key 用法很重要, 甚至自定义一些函数去处理
6. 遍历文件遇到指定字符退出
评: iter 是一个内置函数用来生产迭代器, partial 的不断的读入文件中 32 字节, 注意 iter 引入第二个参数, 表示当读入的内容是''的时候, 会触发生成器 stop!
7. 函数遍历多出口问题
评: for else 这种用法跟传统的很不一样, 一开始有点不习惯, 熟悉了之后发现在搜索的时候经常会这样写.
8. 字典的循环
评: 字典的循环, 这个是基本功, 必须要掌握.
9. 字典的统计
评: 巧妙的利用字典的 get 用法, 取不到 value 的时候用缺省值 0
10. 字典的统计
评: 有点类似合并同类项, 这样的场景一般用 defaultdict 处理会简洁很多
11. 展开序列
评: 要学会利用 tuple 展开, 会更快更好, 而且很多源码都是这样处理的.
12. 交换变量
评: 让我想起来的冒泡排序, 交换变量, Python 可以直接在一行中交换!
13. 更新序列
来源: http://www.jianshu.com/p/b088c4ceb9c7