Python-AttributeError:“ _ io.TextIOWrapper”对象没有属性“ append”
我收到一个错误
ClassFile.append(filelines) AttributeError: '_io.TextIOWrapper' object has no
attribute 'append'
尝试写入文件时。它是关于编写有关学生分数,他们的姓名,姓氏,班级名称的文件(只需输入班级为Class
1
),以记录有多少个分数及其分数。仅将其最近的3个分数保存在文件中。我不明白这是什么意思。
这是代码
score=3
counter=0
name=input('Name:')
surname=input('Last Name:')
Class=input('Class Name:')
filelines=[]
Class=open(Class+'.txt','r')
line=Class.readline()
while line!='':
Class.append(filelines)
Class.close()
linecount=len(filelines)
for i in range(0,linecount):
data=filelines[i].split(',')
-
您的附加代码混合在一起了。该
append()
方法在filelines
对象上:ClassFile=open(CN+'.txt','r') line=ClassFile.readline() while line!='': filelines.append(line) ClassFile.close()
请注意,我还将
close()
呼叫 移出 了循环。您不需要在
while
那里使用循环;如果要列出所有行,只需执行以下操作:ClassFile=open(CN+'.txt','r') filelines = list(ClassFile) ClassFile.close()
要处理文件关闭,请将文件对象用作上下文管理器:
with open(CN + '.txt', 'r') as openfile: filelines = list(openfile)