Python文本和行读取错误

Python文本和行读取错误,python,python-3.x,coding-style,Python,Python 3.x,Coding Style,我目前作为GCSE学生学习计算机科学。我和我的老师正在努力完成任务3。任务的要求是: 然后,它需要询问用户希望查看哪个类 在此之后,需要询问他们是否希望查看按字母顺序排序的文件、特定班级的高分,或者是否希望查看所选班级中每个学生的平均分 import csv class_a = open('classA.txt') csv_a = csv.reader(class_a) for row in csv_a: row[2] = int(row[2]) print(row[2]) 当我运

我目前作为GCSE学生学习计算机科学。我和我的老师正在努力完成任务3。任务的要求是: 然后,它需要询问用户希望查看哪个类
在此之后,需要询问他们是否希望查看按字母顺序排序的文件、特定班级的高分,或者是否希望查看所选班级中每个学生的平均分

import csv
class_a = open('classA.txt')

csv_a = csv.reader(class_a)

for row in csv_a:
    row[2] = int(row[2])
print(row[2])
当我运行我的程序时,我得到了这个错误

 Traceback (most recent call last):
File "C:\Users\Roo\Desktop\Python\Class\Test.py", line 7, in <module>
row[1]= int(row[1])
IndexError: list index out of range
我的文本文件包含:

Roo,2,3,3  
Roo,4,4,5  
Alfie,5,8,2    
Alfie,2,8,5    
Bob,2,8,6    
Connor,3,5,9    
Connor,5,3,3  
Ellis,5,6,2  
George,5,4,1   
Ellis,4,9,3   
Nathan,5,6,5   
George,5,5,6    
Alfie,9,4,7    
George,4,7,9    
Celis,4,5,4    
Leo,3,2,3    
Celis,6,1,2  
Leo,5,2,1 
当我运行程序时,代码,
row[2]=int(row[2])
告诉我它超出了范围?有什么解决办法吗


请保持基本,我目前是python新手,不理解所有的技术术语

您可能在
classA.txt
的结尾

使用

要检查行是否为空,请在
您可以访问第二个/第三个条目。

谢谢,我已对该错误进行了排序,现在转到下一个“超出范围”错误,它告诉您要查找的项目的索引超出了数组包含的范围。这就好比当第四块饼干只剩下两块时,向一包饼干要第四块饼干。注意:建议不要使用大量文本文件并将一个班级的所有分数存储在一个文本文件中。从长远来看,先使用目录,然后使用文件是非常容易的。我只知道如何使用这种方法,它使你的控制性评估的发展部分变得更加简洁,你能解释一下你的意思吗?我对你的方法感兴趣
Roo,2,3,3  
Roo,4,4,5  
Alfie,5,8,2    
Alfie,2,8,5    
Bob,2,8,6    
Connor,3,5,9    
Connor,5,3,3  
Ellis,5,6,2  
George,5,4,1   
Ellis,4,9,3   
Nathan,5,6,5   
George,5,5,6    
Alfie,9,4,7    
George,4,7,9    
Celis,4,5,4    
Leo,3,2,3    
Celis,6,1,2  
Leo,5,2,1 
for row in csv_a:
    if row:              # or better if len(row)==4:
          row[2] = int(row[2])
          print(row[2])