Python For循环错误;异常

2024-03-29 12:25:10 发布

您现在位置:Python中文网/ 问答频道 /正文

我是python新手,不过我对MATLAB有一些经验。你知道这是怎么回事吗?我试图理解为什么会出现这个“异常”错误。谢谢!你知道吗

for i in range(1,len(yrsPOP)):
    tmpMax = yrsPOP.ix[i,:].max()
    tmpMin = min(yrsPOP.ix[i,:])
    tmp = tmpMax - tempMin
    change.append(tmp)

Error: During handling of the above exception, another exception occurred:

似乎错误发生在“tempMax”行中。感谢您的帮助!你知道吗

真诚地, Python新手


Tags: inforlen错误exceptionrange经验tmp
1条回答
网友
1楼 · 发布于 2024-03-29 12:25:10

基于yrsPOP是一个二维值数组的注释:

for row in yrsPOP:
    tmpMax = max(row)
    tmpMin = min(row)
    tmp = tmpMax - tmpMin
    change.append(tmp)

如果值存储在yrsPOP.ix,则应该将循环更改为for row in yrsPOP.ix。你知道吗

原始代码的问题

1,将成为具有单个元素的元组:(1,),这很可能不是您想要的索引。你知道吗

使用[i:]意味着“索引i及以上的所有项目”。 如果要在索引i处获取项,请使用[i]。你知道吗

您正在减去tempMin而不是tmpMin,这将导致访问未声明的变量时出错。你知道吗

您还可以将tmpMax更改为max(yrsPOP.ix[i:])。你知道吗

len(yrsPOP)正在获取yrsPOP中的项数,但是您正在引用yrsPOP.ix,对吗?你知道吗

相关问题 更多 >