rus*_*ell 46 python list pycharm
我是一名Python初学者并且有一个难题.当我写这样的代码时:
lst = [1, 2, 3, 4]
Run Code Online (Sandbox Code Playgroud)
Pycharm给我一个提示,"这个列表创建可以重写为列表文字".但如果被它取代了
lst = list([1, 2, 3, 4])
Run Code Online (Sandbox Code Playgroud)
Pycharm什么也没说.谁能告诉我为什么?
这段代码lst = [1, 2, 3, 4]在Python中是否合法?我可以忽略提示吗?
Sha*_*awn 38
在Python中编写类似的代码是完全合法的.但是,编写代码就像
lst = [1, 2, 3, 4, 12]
Run Code Online (Sandbox Code Playgroud)
会比"更好"
lst = [1, 2, 3, 4]
... # code has nothing do to with lst
lst.append(12)
Run Code Online (Sandbox Code Playgroud)
一般来说,前者比后者具有更好的性能,但如果后者在你的情况下更具可读性/你有充分的理由这样做,那么你可以忽略PyCharm提示.
如果它困扰你,你可以关闭此检查
"PyCharm-> settings-> editor-> inspection-> Python->列表创建可能是......"
Leb*_*Leb 28
检查您的代码,以确保您没有lst其他地方lst=[].
如果键入以下内容:
lst= []
# more code
lst = [1, 2, 3, 4]
Run Code Online (Sandbox Code Playgroud)
你会收到你得到的提示.如果你保持这种状态,你不会遇到问题,但这是不好的做法.
在这两种情况下,您使用函数来更改变量:list()和append().在前一个中,您只是明确地重新定义变量.
另一个不恰当的例子:
a = 7
# some code that has nothing to do with "a" or uses it
a = 8
Run Code Online (Sandbox Code Playgroud)
刚a = 8开始.无需存储a = 7.