gpt4 book ai didi

python - 尝试访问列表元素时出现索引错误

转载 作者:太空宇宙 更新时间:2023-11-04 09:44:28 25 4
gpt4 key购买 nike

所以我有一个 csv 样式的文本文档,如下所示:

Line number,1  
1,K1,O1,L1,L2,L3
2,K2,O2,L2,L3
3,K3,O3,L1,L3
4,K4,O4,L2

我想检查“行号”之后第一行中的数字是否等于以下行中的第一个元素。在这种情况下,这个数字可以是 1、2、3 或 4。

我的代码如下:

import csv

lineNumber = 0

with open('B.txt', 'r') as f:

reader = csv.reader(f, delimiter=",")

for row in reader:
if "Line Number" in row[0]:
lineNumber = int(row[1]) <- not sure about this syntax btw
print("Is equal")
break

我最终遇到了这个错误:

if "Line Number" in row[0]:
IndexError: list index out of range

所有带有 row[n] 的东西似乎都会出错。

最佳答案

您的代码有 2 处改进:

  1. 比较相同类型的对象,例如intint
  2. 使用 next(reader) 提取 for 循环之前的第一行。

这是重构逻辑的一种方式:

import csv

with open('B.txt', 'r') as f:

reader = csv.reader(f, delimiter=",")

headers = next(reader)
lineNumber = int(headers[1])

for row in reader:
if int(row[0]) == lineNumber:
print("Is equal")
break

关于python - 尝试访问列表元素时出现索引错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50359777/

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