Python操作Excle文件:使用xlwt库将数据写入Excel表格,使用xlrd 库从Excel读取数据。

从excle读取数据存入数据库

1、导入模块:

import xlrd

2、打开excle文件:

data = xlrd.open_workbook('excel.xls')

3、获取表、行/列值、行/列数、单元值

获取一个工作表:

table = data.sheets()[0]     # 通过索引顺序获取
table = data.sheet_by_index(0)   # 通过索引顺序获取
table = data.sheet_by_name(u'Sheet1') # 通过名称获取

获取整行/列的值,返回一个list,i表示行数和列数:

table.row_values(i)
table.col_values(i)

获取总行/列数:

row_num = table.nrows
col_num = table.ncols

获取单元格:

cell_value = table.cell(0,0).value

4、插入数据库:获取到一行的值后插入,循环每一行

row = table.nrows
print(row)
for i in range(1, row):
 row_values = table.row_values(i)
ins_sql = “insert into xxx(xx,xx,xx,xx) value(xx,xx,xx,xx)”
cursor.execute(ins_sql)
db.commit()

从数据库读取数据存入excle

1、导入模块:

Import xlwt

2、创建excle:

book = xlwt.Workbook(encoding='utf-8', style_compression=0)

--------------------------------------

Workbook类初始化时有encoding和style_compression参数

encoding:设置字符编码,一般要这样设置:w = Workbook(encoding='utf-8'),就可以在excel中输出中文了。

默认是ascii。当然要记得在文件头部添加:

#!/usr/bin/env python

# -*- coding: utf-8 -*-

style_compression:表示是否压缩,不常用。

---------------------------------------

3、创建一张表,其实就是创建了一个sheet表:

sheet = book.add_sheet('test', cell_overwrite_ok=True)

---------------------------------------

其中的test是这张表的名字,cell_overwrite_ok,表示是否可以覆盖单元格,其实是Worksheet实例化的一个参数,默认值是False

---------------------------------------

4、读数据库往表中写内容,i,j表示行列,value表示单元格的值:

worksheet.write(row,col,value)
for i in range(1, len(reaults)):
 for j in range(0, len(reaults[0])):
  value = reaults[i][j]
  sheet.write(i, j, value)

5、以上操作保存到指定的Excel文件中:

book.save(r'C:\Users\lenovon\Desktop\a2.xls')

总结

以上所述是小编给大家介绍的python简单操作excle的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!

广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!

稳了!魔兽国服回归的3条重磅消息!官宣时间再确认!

昨天有一位朋友在大神群里分享,自己亚服账号被封号之后居然弹出了国服的封号信息对话框。

这里面让他访问的是一个国服的战网网址,com.cn和后面的zh都非常明白地表明这就是国服战网。

而他在复制这个网址并且进行登录之后,确实是网易的网址,也就是我们熟悉的停服之后国服发布的暴雪游戏产品运营到期开放退款的说明。这是一件比较奇怪的事情,因为以前都没有出现这样的情况,现在突然提示跳转到国服战网的网址,是不是说明了简体中文客户端已经开始进行更新了呢?