当使用 d = {}
初始化字典时,Pycharm 的代码检查器会生成一个警告,说
This dictionary creation could be rewritten as a dictionary literal.
如果我重写它 d = dict()
警告就会消失。由于 {}
已经 is 字典文字,我很确定该消息是错误的。此外,似乎 d = {}
和 d = dict()
都是有效的并且是 Pythonic。
这个相关问题似乎得出结论,选择只是风格/偏好问题: differences between "d = dict()" and "d = {}"
为什么 Pycharm 会提示 d = {}
?
更新:
Mac 做到了。该警告实际上应用于多行,而不仅仅是被标记的那一行。
Pycharm 似乎在寻找一系列连续的语句,您可以在其中初始化字典,然后在字典中设置值。例如,这将触发警告:
d = {}
d['a'] = 1
但是这段代码不会:
d = {}
pass
d['a'] = 1
最佳答案
你的字典声明后面的代码是什么?
我认为如果你有类似的情况,PyCharm 会触发错误:
dic = {}
dic['aaa'] = 5
正如你所写的那样
dic = {'aaa': 5}
注意:如果您使用函数 dict()
,错误就会消失。这并不一定意味着 pycharm 相信 dict()
是文字。这可能只是意味着它不会提示它:
dic = dict()
dic['aaa'] = 5
关于python - 为什么 Pycharm 的检查员提示 "d = {}"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8406242/