Python错误:行索引不是范围内的整数(65536)
我在使用xlwt写入excel文件时收到以下消息: 行索引(u'RN')不是范围内的整数(65536) 引发错误的行来自以下位置:Python错误:行索引不是范围内的整数(65536),python,int,Python,Int,我在使用xlwt写入excel文件时收到以下消息: 行索引(u'RN')不是范围内的整数(65536) 引发错误的行来自以下位置: sheet.write(x,fieldKey, row.OBJECTID) 其中,x是设置行值的计数器,fieldKey是设置列值的另一个计数器 我不知道为什么会收到这个消息,因为值(u'RN')是一个字符串值,但它告诉我它不是范围内的整数(65536)。我相信范围(65536)是excel表格的极限。同样,我只写了18条记录,所以我不明白为什么会出现这个错误。有
sheet.write(x,fieldKey, row.OBJECTID)
其中,x
是设置行值的计数器,fieldKey
是设置列值的另一个计数器
我不知道为什么会收到这个消息,因为值(u'RN')是一个字符串值,但它告诉我它不是范围内的整数(65536)。我相信范围(65536)是excel表格的极限。同样,我只写了18条记录,所以我不明白为什么会出现这个错误。有人能帮忙吗
谢谢,
Mike根据表中的参数。write应为ycoord、xcoord、value
所以它应该类似于sheet.write(0,0,答案1)
根据响应进行编辑。根据参数进行。写入应为ycoord、xcoord、value
所以它应该类似于sheet.write(0,0,答案1)
根据响应进行编辑。您得到的错误是因为
x
(行索引)不是数字,而是字符串。检查传递给工作表的值。编写方法;前两个必须是数字(在打电话之前尝试打印它们)。您收到的错误是因为x
(行索引)不是数字,而是字符串。检查传递给工作表的值。编写方法;前两个必须是数字(在打电话之前尝试打印它们)。您可以在definit中的row.py中更改限制(self、rowx、parent_)让我们将其设为x2,例如:
if not (isinstance(rowx, int) and 0 <= rowx <= 131071):
如果不是(isinstance(rowx,int)和0您可以在definit(self,rowx,parent_)表内的row.py中更改限制,让我们将其设为x2,例如:
if not (isinstance(rowx, int) and 0 <= rowx <= 131071):
如果没有(isinstance(rowx,int)和0这是因为您不能写入超过65536行的excel。(您现在可以使用xlsx格式)。我也有同样的问题,请尝试.to_csv()这是因为您不能写入超过65536行的excel。(您现在可以使用xlsx格式)。我也有同样的问题,请尝试.to_csv()正如您所说,该值是一个字符串rn
,它不是一个int-不包括范围部分…为什么要将u'rn'
作为列索引/坐标传递?您希望它做什么?啊……我已经研究了几个小时。我刚刚发现,在另一个实例中,我将x设置为隐藏在脚本深处的变量。我确实尝试过我之前一直在寻找,但现在我突然想到了。乔恩,你的帖子让我又看了一遍。谢谢你。正如你说的,这个值是一个字符串rn
,它不是一个整数-不必指定范围部分…为什么你要将u'rn'
作为列索引/坐标传递?你期望它做什么?啊哈…我已经做了好几个小时了。我只是在另一个例子中,我发现我将x设置为隐藏在脚本深处的变量。我实际上在早些时候尝试过查找,但现在我突然想到了。Jon,你的帖子让我再次查找。谢谢你。如果你称它们为row和col而不是y和x,那么更容易记住它们。然后顺序看起来很自然,而不是向后。如果是y,则更容易记住你称它们为row和col,而不是y和x。然后顺序看起来很自然,而不是向后。好吧,也许不太清楚,但如果你有一个名为x
的计数器和一个名为fieldKey
的键,那么后面的键将保存一个字符串u'RN'
。但是你是对的,我做出了一个假设g、 的确:谢谢大家。我一直在传递x作为一个数字,直到它被我设置的另一个x变量覆盖。谢谢你们的帮助!好吧,也许不太清楚,但如果你有一个名为x
的计数器和一个名为fieldKey
的键,那么后者可能会保存一个字符串u'RN'
你是对的,我做了一个可能是错误的假设。事实上:谢谢大家。我已经完成了我把x作为一个数字传递,直到它被我设置的另一个x变量覆盖。谢谢大家的帮助!