Ep 16.Goodbye Python 2, Hello Python 3!

今天我们和陈铮聊了 Python3 相关的话题。

## 本期主播 - [adamwen][1] - [laixintao][2] - [Manjusaka][3] ## 本期嘉宾 - [liamchzh][4] ## TimeLine - 00:00:30 正片开始-嘉宾介绍 - 00:01:27 聊一聊自己喜欢的 Python3 特性 - 00:02:00 dataclasses - 00:04:09 在面向对象的开发过程中何时会用到 frozen 这个特性 - 00:05:19 使用 datacalsses 时在 `__init__` 中定义的参数属于 class 参数还是对象参数? - 00:12:10 有没有一个方法能够在 `__init__` 方法中调用 dataclasses 的 `__init__` 方法? - 00:15:10 Python 的执行代码有必要获取机器有多少核心嘛,因为它可以通过外部在控制多线程模型? - 00:16:46 有序字典 - 00:17:18 Django choices - 00:19:00 金融验签之参数顺序 - 00:21:15 关于对接支付接口的一些吐槽 - 00:22:08 兼顾一批数据的有序和快速查找 - 00:23:08 f-String - 00:24:52 如果将 f-String 的 f 前缀变成后缀 - 00:26:02 type hint - 00:27:22 type hint 在 CI 中的应用 - 00:29:16 在真实使用过程中是整理 CI 的时间消耗与 CI 帮助我们修复 BUG 的时间哪个更多一点 - 00:30:00 Python3 中觉得不爽的点 - 00:30:09 pep572 海象操作符 - 00:30:57 (不局限于 Python3)线上调试工具缺乏 - 00:33:48 3 除以 2 的结果是什么 - 00:34:42 Python3 sort 去掉了 cmp 参数 - 00:35:32 Python3 的升级偏向于某些语法糖(相对于调试工具等方面) - 00:37:26 Python2 迁移至 Python3 过程中的问题 - 00:38:01 迁移方式 - 00:41:28 如何在之迁移了部分语法的情况下再 Python3 中进行测试 - 00:43:46 分层迁移过程中的一些细节 - 00:45:14 何时停止对 Python2 的测试 - 00:48:06 关于面试会提到的 Python3 与 Python2 如何同时兼容的问题的讨论 - 00:49:20 关于 Mercurial 迁移文章的讨论 - 00:53:16 关于迁移后测试的一些补充 - 00:55:56 Python2 迁移至 Python3 之字符串的一个坑 - 00:57:28 Unicode 相关讨论以及 Python 中的字符串和 Unicode - 01:06:45 更多关于 Python2 中坑的举例(吐槽) - 01:09:01 对现在需要做 Python3 迁移工作的人的建议 - 01:15:37 Python3 协程的相关讨论(Manjusaka 疯狂输出) - 01:28:59 推荐环节 - 01:34:11 laike9m 客串感谢打赏听众 - 01:36:46 结束词+音乐 ## Guest Recommendation - 00:02:00 [python3-dataclasses][5] - 00:26:02 [PEP 484 -- Type Hints][6] - 00:30:09 [PEP 572 -- Assignment Expressions][7] - 00:38:34 [nstagram PyCon 2017][8] - 00:48:58 [Mercurial's Journey to and Reflections on Python 3][9] - 01:01:56 [Pragmatic Unicode][10] - 01:12:35 [caniusepython3][11] - 01:29:11 [A Philosophy of Software Design][12] - 01:29:29 [A Philosophy of Software Design 作者 YouTube 演讲][13] - 01:31:01 [Microservice Patterns][14] - 01:31:13 [TCP/IP详解 卷1:协议][15] - 01:31:29 [vim-which-key][16] - 01:33:04 [kafka-documentation-desgin][17] [1]: https://twitter.com/wenxiaobin [2]: https://www.kawabangga.com/ [3]: https://manjusaka.itscoder.com/ [4]: https://liamchzh.com/ [5]: https://docs.python.org/zh-cn/3/library/dataclasses.html [6]: https://www.python.org/dev/peps/pep-0484/ [7]: https://www.python.org/dev/peps/pep-0572/ [8]: https://www.youtube.com/watch?v=66XoCk79kjM [9]: https://gregoryszorc.com/blog/2020/01/13/mercurial's-journey-to-and-reflections-on-python-3/ [10]: https://nedbatchelder.com/text/unipain/unipain.html#1 [11]: https://pypi.org/project/caniusepython3/ [12]: https://book.douban.com/subject/30218046/ [13]: https://www.youtube.com/watch?v=bmSAYlu0NcY [14]: https://book.douban.com/subject/26989027/ [15]: https://book.douban.com/subject/1088054/ [16]: https://github.com/liuchengxu/vim-which-key [17]: https://kafka.apache.org/documentation/#design