在Python中处理表格数据,有几个非常流行且功能强大的库。以下是一些最常用的库及其示例代码:

1. Pandas

Pandas是一个开放源代码的、BSD许可的库,为Python编程语言提供高性能、易于使用的数据结构和数据分析工具。

安装Pandas

pip install pandas

示例代码:读取CSV文件

import pandas as pd

# 读取CSV文件
df = pd.read_csv('pokemon.csv') # 显示前五行数据
print(df.head()) # 计算某列的平均值
print("Average of column:", df['Speed'].mean()) # 数据筛选
filtered_df = df[df['Speed'] > 10] # 将更改后的DataFrame保存到新的CSV文件
filtered_df.to_csv('filtered_example.csv', index=False)

2. OpenPyXL

OpenPyXL是一个库,用于读取和写入Excel 2010 xlsx/xlsm/xltx/xltm文件。

安装OpenPyXL

pip install openpyxl

示例代码:读取Excel文件

from openpyxl import load_workbook

# 加载一个现有的工作簿
wb = load_workbook('example.xlsx') # 获取活动的工作表
sheet = wb.active # 读取A1单元格的值
print(sheet['A1'].value) # 修改B2单元格的值
sheet['B2'] = 42 # 保存工作簿
wb.save('modified_example.xlsx')

3. CSV

Python标准库中的CSV模块提供了读写CSV文件的功能。

示例代码:读取CSV文件

import csv

# 打开CSV文件
with open('example.csv', mode='r', encoding='utf-8') as file:
reader = csv.reader(file) # 遍历每一行
for row in reader:
print(row) # 写入CSV文件
with open('output.csv', mode='w', encoding='utf-8', newline='') as file:
writer = csv.writer(file)
writer.writerow(['Name', 'Age', 'City'])
writer.writerow(['Alice', '24', 'New York'])

4. xlrd/xlwt

这两个库通常一起使用,xlrd用于读取老版本的Excel文件(xls),而xlwt用于写入。

安装xlrd和xlwt

pip install xlrd xlwt

示例代码:读取xls文件

import xlrd

# 打开工作簿
wb = xlrd.open_workbook('catering_sale.xls') # 通过索引获取工作表
sheet = wb.sheet_by_index(0) # 读取A1单元格的值
print(sheet.cell_value(0, 0)) # 获取行数和列数
print(sheet.nrows, sheet.ncols)

当选择库的时候,最好考虑你的具体需求,例如文件格式(CSV、Excel等)、数据大小、性能需求以及是否需要进行复杂的数据分析和操作。Pandas在数据分析方面提供了广泛的功能,而OpenPyXL、xlrd和xlwt则在处理Excel文件方面各有所长。标准库中的CSV模块足够处理基本的CSV文件操作。

玩转Python:在Python中处理表格数据,几个非常流行且功能强大的库的更多相关文章

  1. Python使用Tabula提取PDF表格数据

    今天遇到一个批量读取pdf文件中表格数据的需求,样式大体是以下这样: python读取PDF无非就是三种方式(我所了解的),pdfminer.pdf2htmlEX 和 Tabula.综合考虑后,选择了 ...

  2. Delphi读取不Word中不规则表格数据并转换成标准表格

    程序需要,需要将word中不规则的表格数据转换为标准的表格,即合并的单元格按正常格式解析,word中的表格格式如下: 解析后数据如下: 借鉴了网上代码,如下处理: procedure TfrmMain ...

  3. python读取es中的所有数据并计算md5然后进行持久化

    #!/usr/bin/python import threading import json import time from elasticsearch import Elasticsearch f ...

  4. Python利用xlutils统计excel表格数据

    假设有像上这样一个表格,里面装满了各式各样的数据,现在要利用模板对它进行统计每个销售商的一些数据的总和.模板如下: 代码开始: 1 #!usr/bin/python3 2 # -*-coding=ut ...

  5. python 实现元组中的的数据按照list排序, python查询mysql得到的数据是元组格式,按照list格式对他们排序

    需求: 需要用echart实现软件模块的统计分析,首先是对数据库的数据查询出来,然后给数据封装成列表(list)格式,数据传到前台,在echart实现绑定数据. 因为数据已经按照从大到小的顺序显示出来 ...

  6. Python 删除列表中的重复数据

    list0=['b','c', 'd','b','c','a','a'] 方法1:使用set() list1=sorted(set(list0),key=list0.index) # sorted o ...

  7. 使用python读取文本中结构化数据

    需求 read some .txt file in dir and find min and max num in file. solution: echo *.txt > file.name ...

  8. WPF下的Richtextbox中实现表格合并,添加删除行列等功能

    .Net中已有现在的方法实现这些功能,不过可能是由于未完善,未把方法公开出来.只能用反射的方法去调用它. 详细信息可以查看.Net Framework 的源代码 http://referencesou ...

  9. 使用phpword获取doc中的表格数据

    1. 首先确定使用phpword是可以读取word文档中表格里面的数据, 使用的phpword版本0.17.0 2.理解word文档内容的存储逻辑规则(这里只做简单概述) 一般做博文喜欢直接贴代码,直 ...

  10. EXTJS4.2 内存中操作表格数据时,删除表格数据,行号不连续解决

    需要重新刷新下表格的view => grid.view.refresh();

随机推荐

  1. SpringBoot接口开发

    依赖的jar包<dependency> <groupId>org.springframework.boot</groupId> <artifactId> ...

  2. 一个适用于定制个性化界面的WPF UI组件库

    前言 今天给大家推荐一个能让你用最少的代码来实现期望的UI效果,适用于定制个性化界面的WPF UI组件库:Panuon.WPF.UI. 组件库官方介绍 Panuon.WPF.UI 是一个适用于定制个性 ...

  3. [CF1830E] Bully Sort

    题目描述 On a permutation $ p $ of length $ n $ , we define a bully swap as follows: Let $ i $ be the in ...

  4. Object.defineProperty用法

    1.能干啥? Object.defineProperty()可以给传入的对象动态的添加或修改属性 2.怎么玩? Object.defineProperty(obj,prop,desc)它有三个参数: ...

  5. 牛客小白月赛2 D题虚虚实实

    题目链接:https://www.nowcoder.com/acm/contest/86/D 解题思路:这题目就是判断是否存在欧拉路径.由无向图存在欧拉路径的充分必要条件可知先判断是否联通,再判断是否 ...

  6. 【UniApp】-uni-app-处理项目输入数据(苹果计算器)

    前言 上一篇文章完成了项目的基本布局,这一篇文章我们来处理一下项目的输入数据 项目的输入数据主要是通过按键来输入的,所以我们需要对按键进行处理 那么我们就来看一下 uni-app-处理项目输入数据 步 ...

  7. ACTF flutter逆向学习

    参考了许多大佬的博客,在此特别诚挚感谢oacia大佬和其他大佬的博客和指导! 1.flutter和apk基础结构介绍 首先下载附件,是一个apk文件,用jadx打开 可以看见flutter字样,而fl ...

  8. 云MSP服务案例|互联网商城的上云改造之旅

    简介: 在中国,经过十年的发展,云计算产业已走过概念普及的1.0时期,进入"上云"和落地的2. 0阶段,企业上云意识不断增强,越来越多的企业选择部署多云和混合IT. 如今,云计算生 ...

  9. C#开源的一款友好的.NET SDK管理器

    前言 今天推荐一款由C#开源的.友好的.NET SDK管理器:Dots. 工具介绍 Dots 是一款 .NET SDK 管理器,可让您轻松安装.卸载和切换 .NET SDK.它是一款跨平台工具,可在 ...

  10. Shiro 的基本使用

    简介 Apache Shiro 是一个强大的.灵活的开源安全框架,可以干净地处理验证.授权.企业会话管理和加密等功能 相关特性 Apache Shiro 具有的主要特性如下图所示: 主要关注的地方在于 ...