【发布时间】:2018-01-29 02:59:40
【问题描述】:
我正在使用下面的 python 代码来创建字典。但是我收到了 dct_structure 变量的一个 PEP 8 警告。警告是:do not use a lambda expression use a def
from collections import defaultdict
dct_structure = lambda: defaultdict(dct_structure)
dct = dct_structure()
dct['protocol']['tcp'] = 'reliable'
dct['protocol']['udp'] = 'unreliable'
我还不习惯 python lambda 表达式。所以任何人都可以帮我定义下面两行python代码的函数以避免PEP警告。
dct_structure = lambda: defaultdict(dct_structure)
dct = dct_structure()
【问题讨论】:
-
你真的再打电话给
dct_structure吗?f是什么? -
我在复制粘贴代码时出错了。我修好了。谢谢,@jonrsharpe。供提及
-
@Arijit 这是定义嵌套
defaultdict的标准方法... 什么工具导致了警告(如果它还没有通过使用正确的名称消失)?您应该可以通过命令行参数或行本身上指定格式的注释来抑制该特定情况。 -
@JonClements - 我正在使用 Pycharm 编写代码,但它仍然显示警告。
-
@Erwin - 我相信这个问题与另一个问题不同。这是用于 lambda defaultdict 表达式。
标签: python lambda defaultdict