有经验的同事,譬如 Java 背景的或者刚毕业的.
只讲接地气的实用的高级用法.
奇技淫巧不要.
大佬们集思广益
谢谢啦.......
只需要列提纲即可或者大佬们想到某一个点也可以.
1
chaleaoch OP - 装饰器套三层
- 元类啊 - property - 描述符 - mixin - typehint - asyncio |
2
larsenlouis 2021-05-18 16:27:23 +08:00
Python Cookbook 目录里挑
|
3
abersheeran 2021-05-18 16:32:57 +08:00 2
没必要。如果你的同事 Java 写的不错,那他不需要知道任何 Python 特性也可以写出漂亮的代码。
你给他讲讲 type hint 和 asyncio 就行了,前者可以让他感觉自己还在写静态语言,后者能让 Python 稍微做一些 IO 密集的工作。别的没必要。 |
4
fwin3000cannada 2021-05-18 16:35:56 +08:00
github 搜 python_interview_question
|
5
so1n 2021-05-18 16:35:58 +08:00
说下一些语法, 以及 Python 是怎么"实现"Java 的反射,注解,范型 以及没有各种 spring-xxxx
|
6
lerry 2021-05-18 16:41:40 +08:00 2
当然是 Python 之父廖雪峰的 Python 教程啦..
|
8
zhoudaiyu 2021-05-18 17:16:12 +08:00
Fluent Python 里面的讲讲就够了
|
10
LeeReamond 2021-05-18 20:05:38 +08:00 2
python 为什么要追求高级用法?这与 python 哲学不合,理想的 python 是你不需要教给他们任何东西,大家看半小时就都能写出所有人都能看懂且简洁的代码。
特殊应用是为了特定场景存在的,像原类之于 ORM,显然如果你不需要处理 orm 框架那没必要折腾原类 |
11
chaleaoch OP @LeeReamond 施主没写过插件吧...
|
12
shawnsh 2021-05-18 20:52:51 +08:00 via Android
map reduce filter 函数组合来一套
|
13
leven87 2021-05-18 21:17:20 +08:00
谁能给我说说高级语法的意义?
|
14
DeleteZN 2021-05-18 21:20:05 +08:00
推荐一本书,《流畅的 Python 》,上面也有 Python 垃圾回收,金字塔模型,GIL 等等。我觉得还是很棒的~
|
15
oneisall8955 2021-05-18 21:42:31 +08:00 via Android
@leven87 用法不是语法叭
|
16
billlee 2021-05-18 22:07:47 +08:00
* 函数对象,decorator
* iterator, generator, list comprehension |
17
iyaozhen 2021-05-18 22:16:45 +08:00
楼上说的 type hint 可以说说,纠正下观念,若类型不是无类型
asyncio 协程 还有相对 java 这些,比如 with open 读文件,就比 java 简洁多了 |
18
Hieast 2021-05-18 23:35:36 +08:00
把内建方法和标准库简单过一遍就够了
|
19
009694 2021-05-19 00:43:04 +08:00 via Android
纠正一下楼上 python 是强类型 不是弱类型
|
20
786375312123 2021-05-19 02:25:38 +08:00
讲讲 collections 和 itertools
|
21
zone10 2021-05-19 09:52:42 +08:00 2
大部分非 Python 程序员都是把 Python 当成跨平台的 shell 在用, 没必要给他们讲高级用法, 有那个精力还不如给他讲讲 awesome-python, 实现哪个功能要用哪个库, 面向 PyPI 和 Github 编程
|
22
WilliamYang 2021-05-19 09:56:19 +08:00
每次面试别人,听到说 Python 是弱类型,我都忍不住要纠正下
|
23
chaleaoch OP @leven87 django_filter 中的 drf_filter 会根据 request.parameters 自动过滤数据库中的数据将数据返回给前端.
但是 我们有一个需求, 数据源不是来自于数据库, 但是我想利用 django filter 中的参数校验. 并且支持自动过滤的功能.让业务层无感知. django filter 用到了 metaclass. 如果你不懂,就看不懂 django filter 的代码, 也就没有办法实现这个功能. |
24
clearT 2021-05-19 11:12:15 +08:00
@LeeReamond 我觉得这对于 python 这类这么动态的语言太难了,干一件事情,十个人可能有二十种写法,黑魔法太多,碰到炫技的就更别提了,你这种要求更适和 go 、java 这种
|
25
charlestang 2021-05-19 14:39:21 +08:00
@DeleteZN 我也觉得《流畅的 Python 》很不错的。
|
26
LeeReamond 2021-05-19 16:12:32 +08:00 via Android
@clearT 不难,这要求的是比起静态类型更多的是语言本身的描述能力,要更加接近自然语言。动态并不是问题,不使用炫技写法可以用编码规范要求
|