python 读取excel的方法

1.对于openpyxl

(1).打开:

wb = openpyxl.load_workbook(“FILE.xlsx”)

(2).读某个sheet:

wb.sheetnames,这是一个list

sheet  = wb[wb.sheetnames[0]]

sheet 的最大行和列:

sheet.max_row  
sheet.max_column

sheet的名字:

sheet.title

(3).创建新的excel:

新建

new_wb = openpyxl.Workbook()

保存

new_wb.save(“NEW_FILE.xlsx”)

(4).写如数据

sheet[“A1”] = “aabbcc”
sheet.cell(row, col, value=”aabbcc”)

注意,这里row,col都从1开始。

(5).openpyxl 读取含有自定义格式的单元格的方法:

有些excel表格中含有自定义格式内容
例如:
带自定义格式的excel cell

这个单元格中的a32_* 属于自定义的部分。
使用wb.cell(row,col).value读出的是stmda、ldmda、stmia等等内容,自定义的部分被去掉了。如何处理自定义单元格:

1).先判断单元格有没有自定义格式,要使用number_format函数

wb = openpyxl.load_workbook(file) 
sheet = table[wb.sheetnames[0]]
usrd = sheet.cell(row, col).number_format 

这里的usrd如果不是自定义单元格,其值是“General” 或者“None
如果是自定义单元格,如上面的离职,usrd值就是 “a32_”@

2).这时候如果想读出你看到的值,那么就要replace:

   new_cell = sheet.cell(row, col).number_format.replace("\"", "").replace(@, sheet.cell(row, col).value)

2.对于xlrd

(1).打开:

wb = xlrd.open_workbook(“FILE.xlsx”)

(2).读某个sheet:

wb.sheet_names() : 这是一个list
sheet = wb.sheet_by_name(“sheet0”)
sheet = wb.sheet_by_index(0)
sheet = wb.sheets()[0]

(3).sheet 的最大行和列:

    sheet.nrows  
    sheet.ncols

注意,这里xlrd 的row,col都从0开始。

其他链接:https://blog.csdn.net/aishenghuomeidaoli/article/details/52160408

猜你喜欢

转载自blog.csdn.net/liujingyu_1205/article/details/81461107