Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/359.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用python脚本读取XLSX文件特定列中的数据_Python_Python 2.7 - Fatal编程技术网

如何使用python脚本读取XLSX文件特定列中的数据

如何使用python脚本读取XLSX文件特定列中的数据,python,python-2.7,Python,Python 2.7,我想从XLSX文件中读取第2列和第3列中给出的数据 import xlrd workbook = xlrd.open_workbook("C:/Users/File.xlsx","rb") sheet = workbook.sheet_by_index(0) for row in range(sheet.nrows): cols = (sheet.row_values(row,1)) and (sheet.row_values(row,2)) print(cols) 但当我执

我想从XLSX文件中读取第2列和第3列中给出的数据

import xlrd

workbook = xlrd.open_workbook("C:/Users/File.xlsx","rb")
sheet = workbook.sheet_by_index(0)
for row in range(sheet.nrows):
    cols = (sheet.row_values(row,1)) and (sheet.row_values(row,2))
    print(cols)
但当我执行上面的脚本时,给出了下面的错误

biff_version = bk.getbof(XL_WORKBOOK_GLOBALS) File
C:\Python27\.....\xlrd_init_.py", line 1323, in getbof raise
XLRDError('Expected BOF record; found 0x%04x' % opcode)
xlrd.biffh.XLRDError: Expected BOF record; found 0x4b50

本例读取excel工作表的所有内容并将其放入矩阵(列表列表),然后可以使用所需的列:

import xlrd

workbook = xlrd.open_workbook("C:/Users/File.xlsx","rb")
sheet = workbook.sheet_by_index(0)
rows = []
for i in range(sheet.nrows):
    columns = []
    for j in range(sheet.ncols):
        columns.append(sheet.cell(i, j).value)
    rows.append(columns)
print rows
试试这个

import xlrd

workbook = xlrd.open_workbook("C:/Users/File.xlsx","rb")
sheets = workbook.sheet_names()
required_data = []
for sheet_name in sheets:
    sh = workbook.sheet_by_name(sheet_name)
    for rownum in range(sh.nrows):
        row_valaues = sh.row_values(rownum)
        required_data.append((row_valaues[0], row_valaues[1]))
print required_data

biff_version=bk.getbof(XL_工作簿_全局)文件“C:\Python27\..…\xlrd_init_uu.py”,第1323行,在getbof raise XLRDError中('预期的BOF记录;找到0x%04x'%opcode')xlrd.biffh.XLRDError:预期的BOF记录;找到0x4B50“如何指示行范围”的可能重复项?@FabioSpaghetti检查此文件以获取可用方法