讲解一下 list comprehension
res = [i.get("name") for i in a]
等同于
res = []
for i in a:
temp = i.get("name")
res.append(temp)
其实就是map的机制
任何可以 iteration 的东西 可以使用这个机制做一些处理
例如说 [f"Hello, {i}" for i in ["Jack", "Mary"]]
除了map 还可以做filter
# 输出100以内的偶数
[i for i in range(100) if i%2==0]
# 输出字串里面有Doctor的字串
[i for i in ["Doctor X","Doctor Y", "teacher"] if "Doctor" in i]
再来更多变化
# 输出100以内的偶数 并且如果小于50的值都设为0
[i if i > 50 else 0 for i in range(100) if i%2==0]
# 99乘法表
[f"{i}X{j}={i*j}" for i in range(1,10) for j in range(1,10)]