我正在练习python,我当前的挑战是获取一个只包含单词的文本文件(比如一个强力字典文件)并从中制作一个电子表格。我成功地制作了一个csv但不是xls。以下是我到目前为止的情况。问题是它没有循环由换行符分隔的单词。如果我知道如何,我会附上它。它只是将数字2放在电子表格中大约65000次。任何帮助表示赞赏。
import xlwt
import os
os.chdir('/sdcard/Scripts')
workbook = xlwt.Workbook('dictionary.xls')
worksheet = workbook.add_sheet('Dictionary')
text_file = open('words.txt', 'r')
in_file = text_file.read()
i = 0
for line in (in_file):
while i < 65500:
worksheet.write(i, 0, line)
i +=1
workbook.save('dictionary.xls')
答案 0 :(得分:1)
我认为程序是循环遍历单词 - 它遍历in_file
中的每一行。问题是在循环中,您将使用相同的行打印到前65500行。然后,在结束时i = 65500
,所以当您前进到下一行时,条件i < 65500
不再为真,因此line
不会被写入。
您可能想要的代码就是删除while循环:
for line in (in_file):
worksheet.write(i, 0, line)
i +=1
这样,对于每行读取,i
将增加1。无需再插入另一个循环。