Python一线进入普通for循环

时间:2019-04-10 01:46:01

标签: python python-3.x for-loop

我试图理解以下一线: weights = [0.0 for i in range(len(training_data[0]))]

我想了解实际上的意思。我认为它说 在weights的长度范围内,为每个itraining_data[0]列表中附加[0.0]

我需要将该单线转换为普通的for循环。以下内容不会产生相同的结果,因为我稍后编辑的程序会抱怨一个numpy问题:

weights = []
num_rows = training_data[0]
for index in range(len(num_rows)):
    weights.append([0.0])

任何有关如何将单线转换为正常的寻找循环的建议都将受到赞赏。

1 个答案:

答案 0 :(得分:0)

这是一个列表推导,基本上是这样转换的:

weights = [0.0 for i in range(len(training_data[0]))]

进入:

weights = []
total_iterations = len(training_data[0])
for i in range(total_iterations): # equivalent to for i==0, i<total_iterations, i++ in other languages
    weights.append(0.0)