通过实例学习Python Excel操作


Posted in Python onJanuary 06, 2020

这篇文章主要介绍了通过实例学习Python Excel操作,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

1.python 读取Excel

# -*- coding: utf-8 -*-
import xlrd
import os,sys

reload(sys)
sys.setdefaultencoding("utf8")

filename = 'text.xlsx'
filename = filename.decode('utf-8')
book = xlrd.open_workbook(filename)
sheet1 = book.sheets()[0]
nrows = sheet1.nrows
print u'表格总行数 ',nrows
ncols = sheet1.ncols
print u'表格总列数 ',ncols

##查询表头
excelhead = []
for i in range(ncols):
 excel_head_values = sheet1.col_values(i)
 excelhead.append(excel_head_values[0])

##查询行的值
excelhang = []
for i in range(nrows)[1:]:
 row_values = sheet1.row_values(i)
 print 'User:' + row_values[2] + ' Filename:' + row_values[0] + ' Tablename:' + row_values[1]

text.xlsx内容如下:

通过实例学习Python Excel操作

运行结果:

表格总行数 4
表格总列数 3
User:edw Filename:sh002_zyb_tx_chk_h0200.py Tablename:SH002_ZYB_TX_CHK_H0200
User:etl Filename:sh002_a_h0200.py Tablename:SH002_A_H0200
User:app Filename:sh002_b_h0200.py Tablename:SH002_B_H0200

2.python 写入Excel

# -*- coding: utf-8 -*-
import xlwt
import pymysql

def sql_connect(sql):
  conn = pymysql.connect(host='192.168.3.xx',port=3306, user='root', password='123456',db='hive',charset='utf8')
  cur = conn.cursor()
  cur.execute(sql)
  data = cur.fetchall()
  cur.close()
  conn.close()
  return data


def write_excel(filename, data):
  book = xlwt.Workbook()      #创建excel对象
  sheet = book.add_sheet('PARTITIONS') #添加一个表Sheet
  c = 0 #保存当前列
  for d in data: #取出data中的每一个元组存到表格的每一行
    for index in range(len(d)):  #将每一个元组中的每一个单元存到每一列
      sheet.write(c,index,d[index])
    c += 1
  book.save(filename) #保存excel

sql = 'select * from PARTITIONS limit 100'
res = sql_connect(sql)
write_excel('partitions.xls', res)

运行结果:

通过实例学习Python Excel操作

3.python Excel写入表内

# -*- coding: utf-8 -*-
import xlwt
import xlrd
import pymysql

#从excel读取数据写入mysql
def excel_to_mysql(filename):
  conn = pymysql.connect(host='192.168.3.xx',port=3306, user='root', password='123456',db='hive',charset='utf8')
  cur = conn.cursor()   #连接数据库
  book = xlrd.open_workbook(filename)
  sheet = book.sheet_by_name('Sheet1')
  rows = sheet.nrows   #获取行数
  for r in range(1,rows): #将标题之外的其他行写入数据库
    r_values = sheet.row_values(r)
    sql = 'insert into user_zw values(%s,%s,%s)' #有几个字段需要几个%s
    data = cur.execute(sql,r_values) #将每一行插入sql
  conn.commit()      #插入所有数据后提交
  cur.close()
  conn.close()
excel_to_mysql('user_zw.xls')

user_zw.xls的内容:

通过实例学习Python Excel操作

查询表中内容:

通过实例学习Python Excel操作

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现删除文件与目录的方法
Nov 10 Python
python单元测试unittest实例详解
May 11 Python
详细解读tornado协程(coroutine)原理
Jan 15 Python
python 堆和优先队列的使用详解
Mar 05 Python
Python3.5 + sklearn利用SVM自动识别字母验证码方法示例
May 10 Python
python之pyqt5通过按钮改变Label的背景颜色方法
Jun 13 Python
Django的models模型的具体使用
Jul 15 Python
对Python _取log的几种方式小结
Jul 25 Python
opencv转换颜色空间更改图片背景
Aug 20 Python
详解基于python的全局与局部序列比对的实现(DNA)
Oct 07 Python
Python word文本自动化操作实现方法解析
Nov 05 Python
Python可视化动图组件ipyvizzu绘制惊艳的可视化动图
Apr 21 Python
pytorch载入预训练模型后,实现训练指定层
Jan 06 #Python
python与mysql数据库交互的实现
Jan 06 #Python
win10系统下python3安装及pip换源和使用教程
Jan 06 #Python
基于python实现文件加密功能
Jan 06 #Python
Pytorch 实现冻结指定卷积层的参数
Jan 06 #Python
如何使用python实现模拟鼠标点击
Jan 06 #Python
pytorch 实现查看网络中的参数
Jan 06 #Python
You might like
2019年漫画销量排行榜:鬼灭登顶 海贼单卷制霸 尾田盛赞鬼灭
2020/03/08 日漫
PHP获取一段文本显示点阵宽度和高度的方法
2015/03/12 PHP
使用PHP处理数据库数据如何将数据返回客户端并显示当前状态
2016/02/16 PHP
php curl上传、下载、https登陆实现代码
2017/07/23 PHP
jquery提升性能最佳实践小结
2010/12/06 Javascript
一个分享按钮的插件使用介绍(可扩展,内附开发制作流程)
2011/09/19 Javascript
js判断为空Null与字符串为空简写方法
2014/02/24 Javascript
兼容各大浏览器的JavaScript阻止事件冒泡代码
2015/07/09 Javascript
搭建Bootstrap离线文档的方法
2016/12/02 Javascript
清除浏览器缓存的几种方法总结(必看)
2016/12/09 Javascript
jQuery实现级联下拉框实战(5)
2017/02/08 Javascript
JavaScript校验Number(4,1)格式的数字实例代码
2017/03/13 Javascript
jQuery轻松实现无缝轮播效果
2017/03/22 jQuery
vue.js开发环境搭建教程
2017/05/04 Javascript
Javascript中的async awai的用法
2017/05/17 Javascript
jquery Form轻松实现文件上传
2017/05/24 jQuery
浅探express路由和中间件的实现
2019/09/30 Javascript
微信小程序使用 vant Dialog组件的正确方式
2020/02/21 Javascript
小程序使用分包的示例代码
2020/03/23 Javascript
js中实现继承的五种方法
2021/01/25 Javascript
[01:08]DOTA2次级职业联赛 - Shield战队宣传片
2014/12/01 DOTA
[49:28]VP vs Optic 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
Python 函数基础知识汇总
2018/03/09 Python
python之信息加密题目详解
2019/06/26 Python
python针对mysql数据库的连接、查询、更新、删除操作示例
2019/09/11 Python
python实现差分隐私Laplace机制详解
2019/11/25 Python
PyTorch 随机数生成占用 CPU 过高的解决方法
2020/01/13 Python
Pytorch maxpool的ceil_mode用法
2020/02/18 Python
Python API 操作Hadoop hdfs详解
2020/06/06 Python
python中plt.imshow与cv2.imshow显示颜色问题
2020/07/16 Python
2014乡镇干部对照检查材料思想汇报
2014/09/26 职场文书
2014学生会工作总结报告
2014/12/02 职场文书
师范生见习总结范文
2015/06/23 职场文书
2015年民兵整组工作总结
2015/07/24 职场文书
Anaconda安装pytorch及配置PyCharm 2021环境
2021/06/04 Python
vue+element ui实现锚点定位
2021/06/29 Vue.js