with odps.execute_sql(“desc table ”).open_reader() as desc:
for j,ele in enumerate(desc[:]) :
print ele[0]
scv_tab_desc.append(ele[:])
print "--->"
遍历desc到第32个元素时 for j,ele in enumerate(desc[12:]) : 行下标越界 ; 这是什么原因?是否有什么参数需要设置,注意,当该表字段数不足32个时运行没有问题的,
楼主你好,根据您提供的代码和描述,问题可能出现在遍历desc
时的索引范围上。当表字段数不足32个时,遍历没有问题,但超过32个字段时就会导致行下标越界。
可以尝试使用enumerate(desc)
来遍历desc
列表,并在循环中添加一个条件来限制遍历的次数,以避免越界错误。例如:
for j, ele in enumerate(desc):
if j < 32:
print(ele[0])
scv_tab_desc.append(ele[:])
print("--->")
这样设置后,只有前32个元素会被遍历并执行相应的操作,超过32个元素的部分将被忽略。
另外,请确保表名正确,并确认是否需要引号或其他特殊字符来正确指定表。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
MaxCompute(原ODPS)是一项面向分析的大数据计算服务,它以Serverless架构提供快速、全托管的在线数据仓库服务,消除传统数据平台在资源扩展性和弹性方面的限制,最小化用户运维投入,使您经济并高效的分析处理海量数据。