如何将xlsx转换为制表符分隔的文件

我有相当多的xlsx文件,这是一个痛苦转换他们一个一个制表符分隔的文件

我想知道是否有任何解决scheme,由python做到这一点。 在这里,我发现了什么,试图做什么失败这个我发现,我试过的解决scheme,但没有工作质量转换.xls和.xlsx到.txt(制表符分隔)在Mac

我也试图做一个文件,看看它是如何工作,但没有成功

#!/usr/bin/python import xlrd import csv def main(): # I open the xlsx file myfile = xlrd.open_workbook('myfile.xlsx') # I don't know the name of sheet mysheet = myfile.sheet_by_index(0) # I open the output csv myCsvfile = open('my.csv', 'wb') # I write the file into it wr = csv.writer(myCsvfile, delimiter="\t") for rownum in xrange(mysheet.nrows): wr.writerow(mysheet.row_values(rownum)) myCsvfile.close() if __name__ == '__main__': main() 

没有真正需要的主要function。

不确定你的缩进问题,但这是我如何写你有什么。 (根据上面的第一条评论,应该工作)

 #!/usr/bin/python import xlrd import csv # open the output csv with open('my.csv', 'wb') as myCsvfile: # define a writer wr = csv.writer(myCsvfile, delimiter="\t") # open the xlsx file myfile = xlrd.open_workbook('myfile.xlsx') # get a sheet mysheet = myfile.sheet_by_index(0) # write the rows for rownum in xrange(mysheet.nrows): wr.writerow(mysheet.row_values(rownum))