Python的新手,可通过DataQuest学习。我正在学习有关创建列表列表的知识(复数是列表列表还是列表列表?:P)。好吧,对于此特定部分,这是正确的代码:
numerical_list = [];
for line in nested_list:
name = line[0]
count= float(line[1])
new_list = [name, count]
numerical_list.append(new_list)
print(numerical_list[0:5]);
它们为您提供了一些说明,包括在开始循环之前创建空的numeric_list,但是对于为什么需要在循环主体中声明该空列表的原因,我有些困惑创建
new_list = [name, count]
无需在外部声明。我想我明白了,但我想确定。
我的理解是,由于numeric_list为空,因此需要在循环外部声明它,使其存在,然后在线上
numerical_list.append(new_list)
我正在为它注入生命。同时,因为我用参数声明了new_list,所以它已经具有“生命”(我敢肯定有一个更好的,更具技术性的词,但我不知道),并且不需要单独建立。那是对的吗?还是我在这里变得完全疯了,并在不断完善自己的逻辑?
换句话说,这是正确的吗:不能在循环内创建新的空列表,但是可以创建带有参数的新列表。
答案 0 :(得分:0)
否,您还可以在循环内创建空列表。例如,您可以将循环内的列表创建重写为
new_list = []
new_list.append(name)
new_list.append(count)
但是,循环是用来填充numerical_list
的,因此需要在循环之前创建它。如果您是在循环中创建的,则每次迭代都会被一个空列表覆盖。