我想自动创建多个文本文件,其中包含我存储在一个excel文件中的一些信息。 excel文件存储了大量信息,每行有几个单元格,每个主题的信息都写在不同的文本文件中。来自excel文件的数据应该粘贴在文本文件中写入的文本之间(参见下面的代码)。
我已经编写了一个代码,用于在每个文本文件中写入我需要的其他信息,但我不知道如何将数据从excel传输到文本文件中:
import xlrd
file = open("testfile.txt", "w")
file.write("text1.\n")
file.write("text2\n")
file.write("text3\n")
file.write("text4\n")
wb = xlrd.open_workbook(r"C:Data.xls")
我不知道如何继续代码让它循环遍历excel文件,逐行,提取一些数据,将其粘贴到文本文件中的文本中,关闭文本文件并打开一个新文件一个并做同样的事。
所以文本文件应该看起来像这样:
text1 copied data from excel1
text2 copied data from excel2
text3 copied data from excel3
等...
有人能帮助我吗?如果这是基本的,我很抱歉,我是python的新手。使用Python 3.4.1
答案 0 :(得分:1)
我会这样做:
import xlrd
xlsfilename='test.xlsx'
test = xlrd.open_workbook(xlsfilename)
number_subjetcs=50 # assuming it is known, otherwise you need a 'foreach line' loop
number_columns=3 # assuming it is known...
for row in range(number_subjetcs):
txtfilename = 'testfile' + str(row) + '.txt'
with open(txtfilename, "w") as f:
for col in range(number_columns):
s1 = 'text' + str(col+1) + ' : '
f.write(s1)
# assuming there is only 1 sheet in the excel file
val = test.sheets()[0].cell(row,col).value
s2 = str(val) + '\n'
f.write(s2)