python中excel的读取和写入

python中对于excel文件数据的读取和写入,主要有两种方法,一种是通过pandas库,一种是通过openpyxl库。在实际过程中,因为pandas库对单元格的定位和访问比较方便,openpyxl可以对单个单元格进行写入,而pandas库没有这样的功能。因而pandas库适合读取;openpyxl库适合写入

pandas:读取、访问、写入

读取:

import pandas as pd
data = pd.read_excel('shuju.xlsx',engine = 'openpyxl')

访问单元格:

value = data.iloc[row,col]

写入:

写入表格

# 创建一个DataFrame
data = {'姓名': ['Bob', 'Alice'], '分数': [80, 99]}
df = pd.DataFrame(data)

# 将DataFrame写入Excel文件
df.to_excel('result.xlsx', index=False)

写入单元格

无,pandas库无法直接写入单元格。一般都是把数据存到数据结构中,然后df.to_excel整体将数据导入excel文件。

openpyxl:创建、读取、访问、写入

创建表格:

from openpyxl import Workbook
wb = Workbook()
ws = wb.active
....
ws.save('pathtosave')

读取:

data = openpyxl.load_workbook(文件路径) 
sheet = data.worksheet[0] '''导入表,第一张表,索引为0'''

访问单元格:

cell_value = sheet.cell(row, col).value

写入:

写入表格

openpyxl无法直接写入整个表格,但是可以通过append来添加一行数据

# 写入数据
sheet['A1'] = '姓名'
sheet['B1'] = '成绩'

# 添加一行数据
sheet.append(['Alice', 99])

写入单元格

wb = Workbook()
ws = wb.active
ws.cell(row=1, column=1, value="姓名")
ws.cell(row=1, column=2, value="分数")
ws.save('result.xlsx')

注意:

1.pandas的行列索引从0开始,且不包括表头title;openpyxl索引从1开始,且包括表头。

2.   查找某一内容所在的行索引

data = pd.read_excel('shuju.xlsx',engine = 'openpyxl')
row_index = data.loc[data['姓名'] == 'Alice'].index[0]

相关推荐

  1. pythonexcel读取写入

    2024-07-19 08:12:01       20 阅读
  2. Python,如何读取写入文件?

    2024-07-19 08:12:01       39 阅读
  3. python读取excel数据写入mysql

    2024-07-19 08:12:01       28 阅读
  4. python批量读取Excel数据写入word

    2024-07-19 08:12:01       25 阅读
  5. Python读取写入文档

    2024-07-19 08:12:01       35 阅读
  6. Python文件读取写入

    2024-07-19 08:12:01       24 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-19 08:12:01       66 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-19 08:12:01       70 阅读
  3. 在Django里面运行非项目文件

    2024-07-19 08:12:01       57 阅读
  4. Python语言-面向对象

    2024-07-19 08:12:01       68 阅读

热门阅读

  1. Python 3 CGI编程

    2024-07-19 08:12:01       18 阅读
  2. 为什么 HashMap 的容量是 2 的整次幂?

    2024-07-19 08:12:01       15 阅读
  3. C++编程逻辑讲解step by step:利用文档类处理数据

    2024-07-19 08:12:01       20 阅读
  4. 【Oracle】Oracle中的LISTAGG函数

    2024-07-19 08:12:01       18 阅读
  5. new和malloc

    2024-07-19 08:12:01       21 阅读
  6. Redis 地理位置 GEO 模块

    2024-07-19 08:12:01       21 阅读
  7. 一文理解ThreadPoolExecutor线程池以及运行时间

    2024-07-19 08:12:01       20 阅读
  8. AccessibilityEvent常用事件

    2024-07-19 08:12:01       19 阅读
  9. vue3封装el-table及实现表头自定义筛选

    2024-07-19 08:12:01       19 阅读
  10. jEasyUI 显示海量数据

    2024-07-19 08:12:01       19 阅读