通过实例学习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 相关文章推荐
Django框架中数据的连锁查询和限制返回数据的方法
Jul 17 Python
使用python3.5仿微软记事本notepad
Jun 15 Python
python读取excel指定列数据并写入到新的excel方法
Jul 10 Python
详解Python使用Plotly绘图工具,绘制甘特图
Apr 02 Python
在pyqt5中QLineEdit里面的内容回车发送的实例
Jun 21 Python
基于python二叉树的构造和打印例子
Aug 09 Python
pytorch 模型的train模式与eval模式实例
Feb 20 Python
Python通过两个dataframe用for循环求笛卡尔积
Apr 29 Python
如何使用PyCharm引入需要使用的包的方法
Sep 22 Python
Python基于Webhook实现github自动化部署
Nov 28 Python
pandas 数据类型转换的实现
Dec 29 Python
Python中的pprint模块
Nov 27 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
搜索引擎技术核心揭密
2006/10/09 PHP
php 一元分词算法
2009/11/30 PHP
基于swoole实现多人聊天室
2018/06/14 PHP
PHP手机号码及邮箱正则表达式实例解析
2020/07/11 PHP
JS 页面自动加载函数(兼容多浏览器)
2009/05/18 Javascript
jquery 查找新建元素代码
2010/07/06 Javascript
JavaScript实现网页上的浮动广告的简单方法
2013/06/14 Javascript
jQuery实现可收缩展开的级联菜单实例代码
2013/11/27 Javascript
setTimeout自动触发一个js的方法
2014/01/15 Javascript
nodejs开发微博实例
2015/03/25 NodeJs
jQuery 3.0 的变化及使用方法
2016/02/01 Javascript
原生JavaScript编写canvas版的连连看游戏
2016/05/29 Javascript
微信小程序 倒计时组件实现代码
2016/10/24 Javascript
jquery实现表单获取短信验证码代码
2017/03/13 Javascript
JS实现无缝循环marquee滚动效果
2017/05/22 Javascript
深入浅析Vue.js计算属性和侦听器
2018/05/05 Javascript
解决Layui选择全部,换页checkbox复选框重新勾选的问题方法
2018/08/14 Javascript
vue组件之间的数据传递方法详解
2019/04/19 Javascript
javascript实现鼠标点击生成文字特效
2019/12/24 Javascript
Node.js 深度调试方法解析
2020/07/28 Javascript
[38:31]完美世界DOTA2联赛PWL S3 Magma vs GXR 第一场 12.13
2020/12/17 DOTA
Django 实现图片上传和显示过程详解
2019/07/18 Python
Python3.7黑帽编程之病毒篇(基础篇)
2020/02/04 Python
Python3实现监控新型冠状病毒肺炎疫情的示例代码
2020/02/13 Python
pygame实现弹球游戏
2020/04/14 Python
详解python对象之间的交互
2020/09/29 Python
html5超简单的localStorage实现记住密码的功能实现
2017/09/07 HTML / CSS
HTML5 Canvas 实现K线图的示例代码
2019/12/23 HTML / CSS
JAVA软件工程师测试题
2014/07/25 面试题
护士辞职信模板
2014/01/20 职场文书
在校生自我鉴定
2014/01/23 职场文书
超市周年庆活动方案
2014/08/16 职场文书
党的群众路线教育实践活动心得体会(企业)
2014/11/03 职场文书
python opencv常用图形绘制方法(线段、矩形、圆形、椭圆、文本)
2021/04/12 Python
解决goland 导入项目后import里的包报红问题
2021/05/06 Golang
Nginx速查手册及常见问题
2022/04/07 Servers