繁体   English   中英

无法在 python 3 中导入 xlrd 模块

[英]Unable to import xlrd module in python 3

尝试在 Windows 上的 python 中导入 xlrd 时,出现此错误“SyntaxError:在编译单个语句时发现多个语句”

我已经安装了最新版本的 xlrd 和 python(3.7.0)。 你能帮我弄清楚问题是什么吗?

import xlrd
import unicodecsv

def xls2csv (sheet1.xlsx, sheet1.csv):

    wb = xlrd.open_workbook(sheet1.xlsx)
    sh = wb.sheet_by_index(2)

    fh = open(sheet1.csv,"wb")
    csv_out = unicodecsv.writer(fh, encoding='utf-8')

    for row_number in xrange (sh.nrows):
        csv_out.writerow(sh.row_values(row_number))

    fh.close()

我认为 XLRD 仅适用于 .xls 文件。正如您打开的那样。csv 文件我认为它可能因此导致错误..在 msword 中将文件类型更改为 .xls。

我不确定答案,但通过将文件类型更改为.xls 尝试一次。

我最终这样做了,现在它可以工作了。 不过感谢您的帮助。

import xlrd
import unicodecsv

book = xlrd.open_workbook("test.xls")
sheet = book.sheet_by_index(0)


try:
    fh = open("test.csv","wb")
    csv_out = unicodecsv.writer(fh, encoding='utf-8')
except:
    print ("Something is wrong..")


for row_number in range (sheet.nrows):
    csv_out.writerow(sheet.row_values(row_number))
    fh.close()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM