当前位置:Gxlcms > Python > python如何与excel结合

python如何与excel结合

时间:2021-07-01 10:21:17 帮助过:552人阅读

python与excel结合的方法:首先获取工作表的方法和属性,并创建或删除工作表;然后定位单元格并访问;最后使用函数【copy_worksheet】拷贝工作表即可。

python与excel结合的方法:

step1 使用load_workbook(r’xlsx文件路径‘)

  1. >>> import openpyxl
  2. >>> wb = openpyxl.load_workbook(r'D:\PycharmProjects\requests\250.xlsx')
  3. >>> type(wb)
  4. <class 'openpyxl.workbook.workbook.Workbook'>

相关学习推荐:python视频教程

step2 获取工作表的方法和属性

get_sheet_names()或者sheetnames

  1. >>> wb.get_sheet_names()
  2. ['Sheet']
  3. >>> wb.sheetnames
  4. ['Sheet']
  5. >>> ws = wb.get_sheet_by_name('Sheet') # 工作表对象

step3 创建和删除工作表

create_sheet 创建工作表

remove_sheet 删除工作表(删除工作表的对象)

  1. >>> rnx = wb.create_sheet(index = 0,title = 'sheet1')
  2. >>> wb.get_sheet_names()
  3. ['sheet1', 'Sheet']
  4. # 注意删除工作表时,要删除工作表的对象 ws = wb.get_sheet_by_name('工作表')
  5. >>> wb.remove_sheet(wb.get_sheet_by_name('sheet1'))
  6. >>> wb.sheetnames
  7. ['Sheet']

step4 定位单元格

row 行

column 列

coordinate 坐标

offset 偏移 offset(行偏移,列偏移)

  1. >>> c = ws['A2']
  2. >>> c.row
  3. 2
  4. >>> c.column
  5. 'A'
  6. >>> c.coordinate
  7. 'A2'
  8. >>> d = c.offset(2,0)
  9. >>> d.value
  10. '这个杀手不太冷'

step5 ’AA‘是多少

openpyxl.cell.cell.get_column_letter()

openpyxl.cell.cell.column_index_from_string()

  1. >>> openpyxl.cell.cell.get_column_letter(27)
  2. 'AA'
  3. >>> openpyxl.cell.cell.column_index_from_string('AA')
  4. 27

step6 访问多个单元格

先迭代行再去迭代列

  1. >>> for each_movies in ws['A2':'B10']: # each_movies是一个元祖
  2. for each_cell in each_movies:
  3. print(each_cell.value,end = ' ')
  4. print('\n')
  5. 肖申克的救赎 9.6
  6. 霸王别姬 9.6
  7. 这个杀手不太冷 9.4
  8. 阿甘正传 9.4
  9. 美丽人生 9.5
  10. 泰坦尼克号 9.3
  11. 千与千寻 9.3
  12. 辛德勒的名单 9.5
  13. 盗梦空间 9.3
  1. >>> for each_rows in ws.rows:
  2. print(each_rows[1].value)
  3. 评分
  4. 9.6
  5. 9.6
  6. 9.4
  7. 9.4
  8. ....
  9. 8.6

还可以指定迭代多少个

  1. >>> for each_row in ws.iter_rows(min_row = 2,min_col = 1,max_row = 4,max_col = 2):
  2. print(each_row[0].value)
  3. 肖申克的救赎
  4. 霸王别姬
  5. 这个杀手不太冷

step7 拷贝工作表

copy_worksheet(工作表)

  1. >>> new = wb.copy_worksheet(ws)
  2. >>> type(new)
  3. <class 'openpyxl.worksheet.worksheet.Worksheet'>
  4. >>> wb.save(r'D:\PycharmProjects\requests\250.xlsx') #注意先把原先打开的excel文件关闭再去运行代码

相关学习推荐:excel基础教程

以上就是python如何与excel结合的详细内容,更多请关注gxlcms其它相关文章!

人气教程排行