Python处理excel

from openpyxl import Workbook
wb = Workbook()
print(wb.active)
sheet = wb.active
sheet.title = "fangchen1"
wb.save("excelTest.xlsx")

wb = Workbook()    在内存中创建一个excel表格

wb.active  就是这个高亮的

Python处理excel_第1张图片

这个表格赋值给sheet

然后sheet.title = "fangchen1"就是改名成fangchen1

wb.save("excelTest.xlsx") 注意前面是在内存中创建的,只有save之后才会放到磁盘中,相当于另存为了。然后就会发现当前目录下有一个excelTest.xlsx的文件

 


单元格操作遍历

1.打开excel表格

from openpyxl import load_workbook
wb = load_workbook("excelTest.xlsx")

2.选中那个sheet

print(wb.sheetnames)
#sheet = wb.get_sheet_by_name("Sheet1")
sheet = wb["Sheet1"]

print之后会出现sheet的名称

第二行的代码可以选中sheet,但是python好像不推荐使用,出现了警告信息

使用第三行的可以选中sheet,通过名字

以下代码是对某单元格操作,赋值,打印,注意第二行和第三行的是打印不同的东西

sheet["B3"] = "fangchen"
print(sheet["B3"])
print(sheet["B3"].value)

遍历选定单元格

#打印从A1:A10单元格的数据
for cell in sheet["A1:A10"]:
    cell[0].value = "fangchen"
    print(cell[0].value)

遍历整个表格

for row in sheet:
    for cell in row:
        print(cell.value,end=",")
    print()

第二行到第五行,每行打印五个

for row in sheet.iter_rows(min_row = 2,max_row = 5,max_col = 5):
    for cell in row:
        cell.value = "chengyichen"

按列循环遍历

#按列循环
for col in sheet.columns:
    for cell in col:
        print(cell.value,end=',')
    print()

打印指定列,刚学python,没怎么玩过,试了一下这个max_col和min_col可以换位置,但是不可以打错名字。还有那iter_cols不可以打错

for col in sheet.iter_cols(max_col = 3,min_col = 1,max_row = 5):
    for cell in col:
        print(cell.value)

删除单元格

for col in sheet.iter_cols(max_col = 3,min_col = 1,min_row = 1,max_row = 5):
    for cell in col:
        print(cell.value)
wb.remove(sheet)

然后,执行了上述操作,都是在内存中进行,如果不写回磁盘是不会保存的。

你可能感兴趣的:(Python处理excel)