tkFileDialog.askopenfilename
возвращает кортеж имен файлов. Однако xlrd.open_workbook
требует только одного имени файла для открытия.
Если вы хотите прочитать данные из нескольких файлов, используйте цикл for
для обработки одного файла за раз:
def uploadtranscript(self):
self.student=[]
self.transcript_upload = tkFileDialog.askopenfilename(filetypes=(("Excel files", ".xls"), ("All files", "*.*")),multiple=1)
self.student.append(self.transcript_upload)
for transcript_fname in self.transcript_upload:
self.book = xlrd.open_workbook(transcript_fname)
self.sheet = self.book.sheet_by_index(0)
for i in self.student:
for stu in i:
self.id = (self.sheet.cell(0,0).value).encode("utf-8")
print self.id
self.name = (self.sheet.cell (0,1).value).encode("utf-8")
print self.name
self.dep = (self.sheet.cell(0, 2).value).encode("utf-8")
print self.dep
self.gpa = self.sheet.cell(0, 3).value
print self.gpa