Python 当我将一个列表分配给变量时,为什么Pycharm会给我一个提示,即;此列表创建可以重写为列表文字“quot;?

Python 当我将一个列表分配给变量时,为什么Pycharm会给我一个提示,即;此列表创建可以重写为列表文字“quot;?,python,list,pycharm,Python,List,Pycharm,我是Python初学者,有一个难题。 当我编写这样的代码时: lst = [1, 2, 3, 4] Pycharm给我一个提示,即“此列表创建可以重写为列表文字”。 但是如果它被 lst = list([1, 2, 3, 4]) 皮查姆什么也没说。谁能告诉我为什么 这段代码类似于Python中的lst=[1,2,3,4]legal吗?我可以忽略提示吗?检查您的代码,以确保您在其他地方没有lst作为lst=[] 如果键入以下内容: lst= [] # more code lst = [1, 2

我是Python初学者,有一个难题。 当我编写这样的代码时:

lst = [1, 2, 3, 4]
Pycharm给我一个提示,即“此列表创建可以重写为列表文字”。 但是如果它被

lst = list([1, 2, 3, 4])
皮查姆什么也没说。谁能告诉我为什么


这段代码类似于Python中的
lst=[1,2,3,4]
legal吗?我可以忽略提示吗?

检查您的代码,以确保您在其他地方没有
lst
作为
lst=[]

如果键入以下内容:

lst= []
# more code
lst = [1, 2, 3, 4]
您将收到收到的提示。如果你一直这样做,你不会遇到问题,但这是一种坏习惯

在这两种情况下,您使用的是一个函数来更改变量:
list()
append()
。在上一个例子中,您只是显式地重新定义变量

另一个不恰当的例子:

a = 7
# some code that has nothing to do with "a" or uses it
a = 8

刚开始设置
a=8
。不需要存储
a=7

用Python编写这样的代码是完全合法的。但是,编写类似

lst = [1, 2, 3, 4, 12]
会比

一般来说,前者的性能要比后者好,但如果后者在您的情况下更具可读性/您有充分的理由这样做,那么您可以忽略PyCharm提示

如果它困扰您,您可以在中关闭此检查

“PyCharm->设置->编辑器->检查->Python->列表创建可能是…”

lst = [1, 2, 3, 4]
... # code has nothing do to with lst
lst.append(12)