这个迭代器而不是返回 N 个元素 returns 总是 4。这是怎么回事?
This iterator instead of returning N elements returns always 4. What's going on?
result_list = [result, first_result_value]
for i in data_list[:2]:
i = ((i - result_list[-1]) * multiplier + result_list[-1])
result_list.append(float(i))
return result_list
无论 data_list
有多长,它总是给出一个 result_list
和 4 个数字。我也为循环尝试了这个,但给出了相同的结果:
for i in data_list[:2]:
zz = ((i - result_list[-1]) * multiplier + result_list[-1])
result_list.append(float(zz))
return result_list
有线索吗?
我不完全确定这些函数试图做什么,如果你能给出解释就更好了。要回答有关 ema_list 长度的问题,我们可以检查您是否真的在更改它。
这里你用两个值初始化ema_list:
ema_list = [sma, first_ema_value]
之后,您在循环中重复 两 步
for i in data_list[:2]:
所以回答你的问题:结果 ema_list 长度为 4 的原因是你用两个值初始化它,然后再附加 2 个值。如果您想遍历 data_list 中的所有值,请更改
for i in data_list[:2]:
进入
for i in data_list:
祝你好运!
data_list[:2] 将生成数组的前 2 个元素。
data_list[2:] 将跳过数组的前 2 个元素并生成其余元素。
注意“:”在数组切片中的位置。
result_list = [result, first_result_value]
for i in data_list[:2]:
i = ((i - result_list[-1]) * multiplier + result_list[-1])
result_list.append(float(i))
return result_list
无论 data_list
有多长,它总是给出一个 result_list
和 4 个数字。我也为循环尝试了这个,但给出了相同的结果:
for i in data_list[:2]:
zz = ((i - result_list[-1]) * multiplier + result_list[-1])
result_list.append(float(zz))
return result_list
有线索吗?
我不完全确定这些函数试图做什么,如果你能给出解释就更好了。要回答有关 ema_list 长度的问题,我们可以检查您是否真的在更改它。
这里你用两个值初始化ema_list:
ema_list = [sma, first_ema_value]
之后,您在循环中重复 两 步
for i in data_list[:2]:
所以回答你的问题:结果 ema_list 长度为 4 的原因是你用两个值初始化它,然后再附加 2 个值。如果您想遍历 data_list 中的所有值,请更改
for i in data_list[:2]:
进入
for i in data_list:
祝你好运!
data_list[:2] 将生成数组的前 2 个元素。
data_list[2:] 将跳过数组的前 2 个元素并生成其余元素。
注意“:”在数组切片中的位置。