Python使用SQLite和Excel操作进行数据分析

作者:kestiny 时间:2023-11-27 22:32:28 

昨日,女票拿了一个Excel文档,里面有上万条数据要进行分析,刚开始一个字段分析,Excel用的不错,还能搞定,到后来两个字段的分析,还有区间比如年龄段的数据分析,实在是心疼的不行,于是就想给她程序处理之。

当然,我是一直C++和Qt的,当时就想直接Qt+sqlite3写入数据库,然后就各种数据查询就行了,可做起来却发现,她机器上没有Qt环境,没有C++编译器,得,如果配置环境也得几个小时了,可当时根本没有那么多时间来做,幸好,之前还看过一些Python的东西,并且Python环境好配啊,于是就想用Python实现一个写数据库,查询的功能。于是,行动之。

环境配置

1、下载Python:http://www.python.org/downloads/;
2、下载Excel读取库:http://pypi.python.org/pypi/xlrd;
3、Sqlite3数据库:这个是Python自带的,倒是不用下载了。

编写代码

代码写的很简单,一个类,在构造函数的时候初始化数据库对象,析构的时候释放数据库对象。一个插入数据函数,一个读取Excel函数,话不多说,上代码:


import sqlite3
import xlrd

class FileDispose(object):
 """docstring for FileDispose"""
 def __init__(self, file):
   super(FileDispose, self).__init__()
   '''初始化数据库实例'''
   self.conn = sqlite3.connect(file)
   self.cursor = self.conn.cursor()

def __del__(self):
   '''释放数据库实例'''
   self.cursor.close()
   self.conn.close()

'''数据库插入操作'''
 def insert(self,id,name,sex,age,score,addr):
   sql = 'insert into student(id,name,sex,age,score,addr) values (%d,\"%s\",\"%s\",\"%s\",\"%s\",\"%s\")' % (int(id),name,sex,age,score,addr)
   print(sql)
   self.cursor.execute(sql)
   self.conn.commit()

'''读取Excel文件'''
 def readFile(self, file):
   data = xlrd.open_workbook(file)
   table = data.sheets()[2]
   for rowId in range(1, 100):
     row = table.row_values(rowId)
     if row:
       self.insert(rowId,row[0],row[1],row[2],row[3],row[4])

fd = FileDispose("F:/test.db")
fd.readFile('F:/excel.xlsx')

数据库表是我直接拿SQLiteSpy创建的,字段有id,name,sex,age,score,addr这几个。

来源:http://blog.csdn.net/chlk118/article/details/52702396

标签:python,sqlite,excel
0
投稿

猜你喜欢

  • 用Python一键搭建Http服务器的方法

    2021-08-09 19:36:32
  • 基于keras中的回调函数用法说明

    2023-06-01 14:27:48
  • mysql多表连接查询实例讲解

    2024-01-20 09:53:40
  • SQL 2008 FileStream数据类型

    2008-10-28 21:07:00
  • Python如何实现Paramiko的二次封装

    2023-07-21 14:46:47
  • C#调用Python程序传参数获得返回值

    2023-10-11 06:49:52
  • SQLServer2005安装提示服务无法启动原因分析及解决

    2024-01-16 03:02:26
  • 漂亮的title提示信息

    2008-08-12 12:51:00
  • pyppeteer执行js绕过webdriver监测方法上

    2021-12-13 12:04:40
  • 解决tensorflow 释放图,删除变量问题

    2023-08-10 09:42:47
  • python使用pymongo操作mongo的完整步骤

    2023-07-12 20:31:21
  • 安装了Office2003补丁之后,access不能用,打不开了

    2011-05-12 12:19:00
  • vue自定义keepalive组件的问题解析

    2024-05-09 15:12:38
  • PHP的PDO预处理语句与存储过程

    2023-06-17 11:49:59
  • Python著名游戏实战之方块连接 我的世界

    2022-12-10 06:25:50
  • Python强大的自省机制详解

    2021-06-07 02:07:57
  • Windows11下MySQL 8.0.29 安装配置方法图文教程

    2024-01-24 09:20:40
  • PaddleOCR 识别表情包文字示例详解

    2023-06-02 06:41:55
  • PyTorch中Torch.arange函数详解

    2022-04-29 02:30:50
  • 一文弄懂MySQL索引创建原则

    2024-01-14 07:38:25
  • asp之家 网络编程 m.aspxhome.com