Python 2.7 什么是TypeError:';文件';对象没有属性'__获取项目';什么意思?
我有以下代码:Python 2.7 什么是TypeError:';文件';对象没有属性'__获取项目';什么意思?,python-2.7,file,syntax-error,Python 2.7,File,Syntax Error,我有以下代码: My_Directory = r"/Users/schuylerraeschroerborges/Desktop/Mars_Project/mcam_image_and_label/0984MR0043380090502893E01_DRCL" # Get data from directory My_Extension = ".LBL" WorkingDirectory = "/Users/schuylerraeschroerborges
My_Directory = r"/Users/schuylerraeschroerborges/Desktop/Mars_Project/mcam_image_and_label/0984MR0043380090502893E01_DRCL" # Get data from directory
My_Extension = ".LBL"
WorkingDirectory = "/Users/schuylerraeschroerborges/Desktop/Mars_Project/" # Work in same directory
f = open('mcam_image_and_label/0984MR0043380090502893E01_DRCL.LBL','r') # Open label file
lines = f.readlines() #index lines
g = open('Expanded_data.csv','w+') # Write in excel spreadsheet
lines = g.readlines()
ID_line = f[21]
ID = re.split('"',f[21])[2]
LO_line = f[134]
LO = re.split('(',f[134])[2]
DI_line = f[442]
DI = re.split('=',f[442])[2]
AZ_line = f[445]
AZ = re.split('=',f[445])[2]
VE_line = f[446]
VE = re.split('=',f[446])[2]
newline = ID + '\t' + LO + '\t' + DI + '\t' + AZ + '\t' + VE + '\n'
g.writelines(newline)
在Python 2.7中运行代码后,我一直得到这个错误,TypeError:“file”对象没有属性“\u getitem\uuuu”。这个错误意味着什么?是否需要更改文件名或其他内容?您正在尝试索引对象
f
,该对象是open()
函数返回的类似文件的对象
在内部,索引是通过文件
对象未实现的特殊方法实现的,这就是您看到错误消息的原因
错误出现在您试图分配ID_lines=f[21]
的行上,可能您想分配行[21]
。您将行存储在行中,而不是f
f
是文件对象。(您可能不想对输出文件调用readlines()
)当我将“f[21]”更改为“lines[21]”:indexer:list index out ofrange@Mark:这可能是因为您正在用从g
读取的行的空列表覆盖从f
读取的行(当您以模式“w+”
打开它时,它会被截断)。