gpt4 book ai didi

python - 二维数组的索引越界?

转载 作者:行者123 更新时间:2023-11-28 17:10:16 27 4
gpt4 key购买 nike

我有一个 2D 列表,我正在尝试检索一个列,其中索引指定为参数(类型:IntEnum)。我在尝试检索索引 0 以外的任何列时遇到 index out of bounds 错误。

枚举:

class Column(IntEnum):
ROAD = 0
SECTION = 1
FROM = 2
TO = 3
TIMESTAMP = 4
VFLOW=5

class TrafficData:
data=[[]]

下面是TrafficData的成员方法

从文件中读取并存储矩阵:

def __init__(self,file):
self.data=[[word for word in line.split('\t')]for line in file.readlines()[1:]]

检索所需的列:

def getColumn(self,columnName):
return [line[columnName] for line in self.data]

调用: )

   column1 = traficdata.getColumn(columnName=Column.ROAD)
`column2 = traficdata.getColumn(columnName=Column.FROM)` //error
`column3 = traficdata.getColumn(columnName=Column.TO)` //error

我在 __init__ 处理后附上一张图片: enter image description here

[

最佳答案

我测试了您上面提供的代码,没有发现任何问题。这使我相信文件中的数据可能有问题。你能粘贴文件数据吗? (制表符分隔的数据)

更新 -我发现了问题 - 正如所怀疑的那样,这是一个数据问题(也涉及到一个小的代码更新)。进行以下更改 -

1) 打开文件时使用适当的编码,我使用的是 utf-16。

2) 在您共享的数据文件的末尾,它包含文本 -“(72413 行受影响)”以及几个换行符。因此,您有 2 个选择,要么手动清理数据文件,要么更新代码以忽略“(受影响的 72413 行)”和“\n”字符。

希望对您有所帮助。

关于python - 二维数组的索引越界?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48065805/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com