zoukankan      html  css  js  c++  java
  • python操作excel----openpyxl模块

    openpyxl模块支持.xls和.xlsx格式的excel创建,但是只支持.xlsx格式的读取操作,不支持.xls的读取(可以使用xlrd模块来读取,写入操作也可使用xlwt模块),也可使用pandas模块对excel进行读写操作。

    openpyxl创建新的excel  

     1 import openpyxl
     2 
     3 #创建工作簿
     4 book=openpyxl.Workbook()
     5 
     6 # 创建表
     7 table1=book.create_sheet(title="联系电话",index=0)#title表名;index:自定义表位置
     8 table2=book.create_sheet("工作经历",3)
     9 
    10 #单元格值得插入(可以是具体值,也可以是excel函数语句)
    11 table1.cell(1,1,"手机号")#参数为:行,列,数值----表中的行和列都是以索引1开始计数,因此在定位单元格时行列都必须不小于1
    12 table1['B1']='年龄'
    13 #单元格插入值的另外一种写法
    14 for i in range(2,10):
    15     table1.cell(i,1).value=12345
    16     table1.cell(i,2).value=i
    17 
    18 # 保存工作簿--可以指定xls或者xlsx
    19 book.save("员工信息.xlsx")#参数:文件名

    openpyxl读取已存在excel及操作  

     1 import openpyxl
     2 
     3 """-----------excel工作簿操作-----------"""
     4 # 读取已有工作簿--注意只支持.xlsx,不支持.xls格式(可以用xlrd模块读取)
     5 book = openpyxl.load_workbook("员工信息.xlsx")
     6 
     7 # 获取所有表对象
     8 table_list = book.worksheets
     9 print(table_list)
    10 
    11 # 获取所有表名
    12 table_name_list = book.sheetnames
    13 print(table_name_list)
    14 
    15 # 获取默认工作表
    16 table_default = book.active
    17 # table_default=book.get_active_sheet
    18 print(table_default)
    19 
    20 # 通过表名获取指定工作表
    21 
    22 table = book['工作经历']
    23 print(table)
    24 table = book.get_sheet_by_name("联系电话")
    25 print(table)
    26 
    27 # 删除工作表
    28 # del book['Sheet']
    29 
    30 # 新增工作表
    31 # book.create_sheet("sheet1")
    32 # book.create_sheet('sheet2')
    33 
    34 
    35 """-----------表操作-----------"""
    36 # 获取表名
    37 table_name = table.title
    38 print(table_name)
    39 
    40 # 获取表中所有行(返回值为迭代器)
    41 rows = table.rows
    42 print(rows)
    43 # for row in table.rows:
    44 #     for cell in row:
    45 #         print(cell.value)
    46 # 获取表中最大行值
    47 max_row = table.max_row
    48 print(max_row)
    49 # 获取表中最小行值
    50 min_row = table.min_row
    51 print(min_row)
    52 
    53 # 获取表中所有列(返回值为迭代器)
    54 columns = table.columns
    55 print(columns)
    56 # for column in table.columns:
    57 #     for cell in column:
    58 #         print(cell.value)
    59 
    60 # 获取表中最大列值
    61 max_column = table.max_column
    62 print(max_column)
    63 # 获取表中最小列值
    64 min_column = table.min_column
    65 print(min_column)
    66 
    67 # 获取表中所有行值(返回值为迭代器)
    68 values = table.values
    69 print(values)
    70 print(list(values))
    71 
    72 """-----------单元格操作-----------"""
    73 # 定位单元格及获取值(三种方式都可)
    74 cell = table.cell(1, 1)
    75 print(cell.value)
    76 cell = table['a1']
    77 print(cell.value)
    78 cell = table['A1']
    79 print(cell.value)
    80 
    81 # 设置单元格值(记得save保存)
    82 table.cell(2, 1).value = 12221231123
    83 table.cell(3, 1, 29019219829)
    84 table['a3'] = 33234543246
    85 table['A4'] = 432333333
    86 
    87 book.save("员工信息.xlsx")
    88 # book.close()

     python操作excel的模块对比

      

  • 相关阅读:
    [iOS 多线程 & 网络
    [iOS 多线程 & 网络
    [iOS 多线程 & 网络
    [iOS 多线程 & 网络
    [iOS 多线程 & 网络
    [iOS UI进阶
    Python基础
    24种编程语言的Hello World程序
    python中的输入和输出
    第一个Python程序
  • 原文地址:https://www.cnblogs.com/open-yang/p/11371205.html
Copyright © 2011-2022 走看看