Python range()提供了错误的列表
我用这个小代码生成一个加权的模103校验和。 问题是,当我运行以下代码时:Python range()提供了错误的列表,python,loops,Python,Loops,我用这个小代码生成一个加权的模103校验和。 问题是,当我运行以下代码时: def checksum_bar(array): s = array[0] s += array[1] for x in range(2, len(array)): print x s += array[x] * x m = s % 103 当输入长度为10的数组时,我得到x的以下结果: 1 2 3 4 5 6 7 8 9 10 但当我运行以下代码时(第三行注释):
def checksum_bar(array):
s = array[0]
s += array[1]
for x in range(2, len(array)):
print x
s += array[x] * x
m = s % 103
当输入长度为10的数组时,我得到x的以下结果:
1
2
3
4
5
6
7
8
9
10
但当我运行以下代码时(第三行注释):
它给了我想要的结果,即使我没有更改迭代:
2
3
4
5
6
7
8
9
10
我是不是遗漏了什么?我想知道是否有人可以复制同样的结果,一些解释也会很好 提供的两组代码将给出相同的结果,因为范围函数肯定从2开始这与您显示的代码不可重复。两个实例都应该打印数字2到9。这个问题没有答案,我得不到和你一样的结果。你在用Python3吗?我在用Python2。我试图在一个新文件中创建一个最小的代码,但它似乎可以工作。我将继续尝试,因为错误仍然存在于旧版本中。
2
3
4
5
6
7
8
9
10