Python实现excel转sqlite的方法


Posted in Python onJuly 17, 2017

本文实例讲述了Python实现excel转sqlite的方法。分享给大家供大家参考,具体如下:

Python环境的安装配置就不说了,个人喜欢pydev的开发环境。

python解析excel需要使用第三方的库,这里选择使用xlrd

先看excel内容:

Python实现excel转sqlite的方法

然后是生成的数据库:

Python实现excel转sqlite的方法

下面是源代码:

#!/usr/bin/python
# encoding=utf-8
'''''
Created on 2013-4-2
@author: ting
'''
from xlrd import open_workbook
import sqlite3
import types
def read_excel(sheet):
  # 判断有效sheet
  if sheet.nrows > 0 and sheet.ncols > 0:
    for row in range(1, sheet.nrows):
      row_data = []
      for col in range(sheet.ncols):
        data = sheet.cell(row, col).value
        # excel表格内容数据类型转换 float->int,unicode->utf-8
        if type(data) is types.UnicodeType: data = data.encode("utf-8")
        elif type(data) is types.FloatType: data = int(data)
        row_data.append(data)
      check_data_length(row_data)
# 检查row_data长度
def check_data_length(row_data):
  if len(row_data) == 3:
    insert_sqlite(row_data)
def insert_sqlite(row_data):
  # 打开数据库(不存在时会创建数据库)
  con = sqlite3.connect("test.db")
  cur = con.cursor()
  try:
    cur.execute("create table if not exists contacts(_id integer primary key "\
            "autoincrement,name text,age integer,number integer)")
    # 插入数据不要使用拼接字符串的方式,容易收到sql注入攻击
    cur.execute("insert into contacts(name,age,number) values(?,?,?)", row_data)
    con.commit()
  except sqlite3.Error as e:
    print "An error occurred: %s", e.args[0]
  finally:
    cur.close
    con.close
xls_file = "test.xls"
book = open_workbook(xls_file)
for sheet in book.sheets():
  read_excel(sheet)
print "------ Done ------"

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
python持久性管理pickle模块详细介绍
Feb 18 Python
web.py在SAE中的Session问题解决方法(使用mysql存储)
Jun 24 Python
python递归删除指定目录及其所有内容的方法
Jan 13 Python
Python数据结构与算法之链表定义与用法实例详解【单链表、循环链表】
Sep 28 Python
python列表的增删改查实例代码
Jan 30 Python
Python实现将通信达.day文件读取为DataFrame
Dec 22 Python
Python字符串的全排列算法实例详解
Jan 07 Python
Django中自定义admin Xadmin的实现代码
Aug 09 Python
python dumps和loads区别详解
Feb 04 Python
iPython pylab模式启动方式
Apr 24 Python
Python爬虫入门案例之爬取二手房源数据
Oct 16 Python
Python&Matlab实现灰狼优化算法的示例代码
Mar 21 Python
PyChar学习教程之自定义文件与代码模板详解
Jul 17 #Python
Python实现将sqlite数据库导出转成Excel(xls)表的方法
Jul 17 #Python
Python下实现的RSA加密/解密及签名/验证功能示例
Jul 17 #Python
Python 的类、继承和多态详解
Jul 16 #Python
PyQt 线程类 QThread使用详解
Jul 16 #Python
Pycharm技巧之代码跳转该如何回退
Jul 16 #Python
Python基础教程之浅拷贝和深拷贝实例详解
Jul 15 #Python
You might like
快速配置PHPMyAdmin方法
2008/06/05 PHP
php防止伪造数据从地址栏URL提交的方法
2014/08/24 PHP
php将图片保存入mysql数据库失败的解决方法
2014/12/27 PHP
PHP生成制作验证码的简单实例
2016/06/12 PHP
php使用Jpgraph创建柱状图展示年度收支表效果示例
2017/02/15 PHP
深入解析PHP中SESSION反序列化机制
2017/03/01 PHP
PHP时间戳和日期相互转换操作实例小结
2018/12/18 PHP
快速保存网页中所有图片的方法
2006/06/23 Javascript
HTML代码中标签的全部属性 中文注释说明
2009/03/26 Javascript
js简单实现删除记录时的提示效果
2013/12/05 Javascript
JS中getYear()和getFullYear()区别分析
2014/07/04 Javascript
javascript实现微信分享
2014/12/23 Javascript
jquery+javascript编写国籍控件
2015/02/12 Javascript
Jquery中基本选择器用法实例详解
2015/05/18 Javascript
JS如何判断json是否为空
2016/07/06 Javascript
基于jQuery的select下拉框选择触发事件实例分析
2016/11/18 Javascript
vue+element的表格实现批量删除功能示例代码
2018/08/17 Javascript
Phaser.js实现简单的跑酷游戏附源码下载
2018/10/26 Javascript
layui数据表格实现重载数据表格功能(搜索功能)
2019/07/27 Javascript
Node.js在图片模板上生成二维码图片并附带底部文字说明实现详解
2019/08/07 Javascript
使用优化器来提升Python程序的执行效率的教程
2015/04/02 Python
15行Python代码实现网易云热门歌单实例教程
2019/03/10 Python
用Python去除图像的黑色或白色背景实例
2019/12/12 Python
python 求10个数的平均数实例
2019/12/16 Python
浅谈pandas dataframe对除数是零的处理
2020/07/20 Python
Jupyter notebook命令和编辑模式常用快捷键汇总
2020/11/17 Python
Python ellipsis 的用法详解
2020/11/20 Python
python3字符串输出常见面试题总结
2020/12/01 Python
中国酒类在线零售网站:酒仙网
2016/08/20 全球购物
阿波罗盒子:Apollo Box
2017/08/14 全球购物
小学语文教研活动总结
2014/07/01 职场文书
茶楼服务员岗位职责
2015/02/09 职场文书
2015年秋季新学期寄语
2015/03/25 职场文书
《钢铁是怎样炼成的》高中读后感
2019/08/07 职场文书
MySQL中utf8mb4排序规则示例
2021/08/02 MySQL
Mysql数据库手动及定时备份步骤
2021/11/07 MySQL