通过实例学习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之赋值,简单也不简单
Sep 24 Python
Python实现把utf-8格式的文件转换成gbk格式的文件
Jan 22 Python
Python实现Sqlite将字段当做索引进行查询的方法
Jul 21 Python
理论讲解python多进程并发编程
Feb 09 Python
django将图片上传数据库后在前端显式的方法
May 25 Python
django如何连接已存在数据的数据库
Aug 14 Python
python3的输入方式及多组输入方法
Oct 17 Python
python 定时器,实现每天凌晨3点执行的方法
Feb 20 Python
python编写一个会算账的脚本的示例代码
Jun 02 Python
python绘制分布折线图的示例
Sep 24 Python
Python实现壁纸下载与轮换
Oct 19 Python
Python基础之进程详解
May 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
让ThinkPHP的模板引擎达到最佳效率的方法详解
2017/03/14 PHP
JavaScript CSS修改学习第一章 查找位置
2010/02/19 Javascript
Textarea与懒惰渲染实现代码
2012/01/04 Javascript
JavaScript转换农历类实现及调用方法
2013/01/27 Javascript
div模拟选择框示例代码
2013/11/03 Javascript
将form表单中的元素转换成对象的方法适用表单提交
2014/05/02 Javascript
JavaScript鼠标事件,点击鼠标右键,弹出div的简单实例
2016/08/03 Javascript
浅谈javascript中的数据类型转换
2016/12/27 Javascript
vue使用Axios做ajax请求详解
2017/06/07 Javascript
JavaScript比较同一天的时间大小实例代码
2018/02/09 Javascript
通过js动态创建标签,并设置属性方法
2018/02/24 Javascript
vue-cli V3.0版本的使用详解
2018/10/24 Javascript
JS错误处理与调试操作实例分析
2020/04/13 Javascript
vue下canvas裁剪图片实例讲解
2020/04/16 Javascript
js实现跳一跳小游戏
2020/07/31 Javascript
vue3.0+vue-router+element-plus初实践
2020/12/02 Vue.js
[46:14]完美世界DOTA2联赛PWL S3 Magma vs INK ICE 第一场 12.11
2020/12/16 DOTA
用Python编写一个基于终端的实现翻译的脚本
2015/04/24 Python
python中argparse模块用法实例详解
2015/06/03 Python
详解django三种文件下载方式
2018/04/06 Python
Python生成rsa密钥对操作示例
2019/04/26 Python
Pycharm如何运行.py文件的方法步骤
2020/03/03 Python
使用Keras中的ImageDataGenerator进行批次读图方式
2020/06/17 Python
CSS3 不定高宽垂直水平居中的几种方式
2020/03/26 HTML / CSS
用html5实现语音搜索框的方法
2014/03/18 HTML / CSS
英国天然保健品网站:Simply Supplements
2017/03/22 全球购物
新娘父亲婚礼致辞
2014/01/16 职场文书
早读迟到检讨书
2014/01/24 职场文书
时尚休闲吧创业计划书
2014/01/25 职场文书
策划总监岗位职责
2014/02/16 职场文书
环保倡议书400字
2014/05/15 职场文书
爱耳日宣传活动总结
2014/07/05 职场文书
食品仓管员岗位职责
2015/04/01 职场文书
2016年党建工作简报
2015/11/26 职场文书
2019最新校园运动会广播稿!
2019/06/28 职场文书
Win11运行cmd提示“请求的操作需要提升”的两种解决方法
2022/07/07 数码科技