ValueError:x和y必须是相同大小的Python

时间:2014-07-04 08:18:53

标签: python

如果我想用matplotlib制作一个散点图,如下所示:

import matplotlib as plt
x = [float(1) for x in xrange(2)]
y = [float(2) for x in xrange(2)]
plt.scatter(x,y)
plt.show()

我总是得到上面的错误。 但是如果我这样做的话:

import matplotlib as plt
x = [1.0, 1.0]
y = [2.0, 2.0]
plt.scatter(x,y)
plt.show()

它有效。那是为什么?

1 个答案:

答案 0 :(得分:4)

在分配x

时,您将覆盖y
x = [float(1) for x in xrange(2)] # x = [1, 1]
y = [float(2) for x in xrange(2)] # x = 1; y = [2, 2]
                  ^

而不是使用x使用_(@kroolik建议的“python中的”不关心变量“)

x = [float(1) for _ in xrange(2)]
y = [float(2) for _ in xrange(2)]