我想遍历一个excel表并获取一组列表或字典中每一行中选定列的值。如果在字典中,则对于每一行,第一个选定列中的值将是键,而其他选定列中的值将是该键的值(数组)。我无法弄清楚如何告诉python仅从选定的列中读取值...因为excel表可能有10列,但是例如,我只对三列感兴趣,而感兴趣的三列并不连续。感谢您使用XLRD的见解。

    import xlrd
    from xlrd import open_workbook
    import arcpy

    wb = open_workbook ("c:\\Users\\Admin\\Documents\\Marion\\Courses\\GEOG485\\FinalProject\\Data\\ExcelFiles\\Belize_Culvert_Nov15_V4.0.xlsx")

    sheet = wb.sheet_by_index(1)

    keys = [sheet.cell(0, 5).value for col_index in xrange(sheet.ncols)]

    dict_list = []
    for rownum in range(sheet.nrows):
        d = {keys[col_index]: sheet.cell(0, 5).value
        for col_index in xrange(sheet.ncols)}:
            dict_list.append(d)


我想用作键的字段是第5列,值是第16列和第17列,作为每个键的数组值...

最佳答案

使用此命令

row_slice(rowx, start_colx=0, end_colx=None)


返回给定行中的Cell对象的一部分。

关于python - 使用xlrd读取python中的选定列和所有行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31656054/

10-12 21:53