通过实例学习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获取beautifulphoto随机某图片代码实例
Dec 18 Python
python合并文本文件示例
Feb 07 Python
python操作数据库之sqlite3打开数据库、删除、修改示例
Mar 13 Python
python实现神经网络感知器算法
Dec 20 Python
Python 查找字符在字符串中的位置实例
May 02 Python
Django中使用Celery的教程详解
Aug 24 Python
python3实现网络爬虫之BeautifulSoup使用详解
Dec 19 Python
Flask框架工厂函数用法实例分析
May 25 Python
python下PyGame的下载与安装过程及遇到问题
Aug 04 Python
Python分割训练集和测试集的方法示例
Sep 19 Python
keras获得某一层或者某层权重的输出实例
Jan 24 Python
pytorch 如何使用float64训练
May 24 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
PL-880隐藏功能
2021/03/01 无线电
php下用GD生成生成缩略图的两个选择和区别
2007/04/17 PHP
PHP中使用cURL实现Get和Post请求的方法
2013/03/13 PHP
PHP实现的构造sql语句类实例
2016/02/03 PHP
PHP中多线程的两个实现方法
2016/10/14 PHP
php使用gd2绘制基本图形示例(直线、圆、正方形)
2017/02/15 PHP
浅谈PHP中如何实现Hook机制
2017/11/14 PHP
textarea的value是html文件源代码,存成html文件的代码
2007/04/20 Javascript
两个DIV等高的JS的实现代码
2007/12/23 Javascript
jquery 列表双向选择器之改进版
2013/08/09 Javascript
js实现的后台左侧管理菜单代码
2015/09/11 Javascript
理解JavaScript中worker事件api
2015/12/25 Javascript
使用do...while的方法输入一个月中所有的周日(实例代码)
2016/07/22 Javascript
Javascript的动态增加类的实现方法
2016/10/20 Javascript
jQuery EasyUI Accordion可伸缩面板组件使用详解
2017/02/28 Javascript
JavaScript之RegExp_动力节点Java学院整理
2017/06/29 Javascript
鼠标拖动改变DIV等网页元素的大小的实现方法
2017/07/06 Javascript
AngularJS service之select下拉菜单效果
2017/07/28 Javascript
vue学习笔记之v-if和v-show的区别
2017/09/20 Javascript
react router 4.0以上的路由应用详解
2017/09/21 Javascript
Vue 开发音乐播放器之歌手页右侧快速入口功能
2018/08/08 Javascript
Vue 指令实现按钮级别权限管理功能
2019/04/23 Javascript
解决layui使用layui-icon出现默认图标的问题
2019/09/11 Javascript
python数组复制拷贝的实现方法
2015/06/09 Python
Python开发的HTTP库requests详解
2017/08/29 Python
Python使用getpass库读取密码的示例
2017/10/10 Python
python中的闭包函数
2018/02/09 Python
python中int与str互转方法
2018/07/02 Python
Python super()函数使用及多重继承
2020/05/06 Python
input元素的url类型和email类型简介
2012/07/11 HTML / CSS
阿迪达斯德国官方网站:adidas德国
2017/07/12 全球购物
美国迪克体育用品商店:DICK’S Sporting Goods
2018/07/24 全球购物
群众路线教育实践活动对照检查材料思想汇报(副处级领导)
2014/10/04 职场文书
颐和园导游词400字
2015/01/30 职场文书
2015年项目经理工作总结
2015/04/30 职场文书
tensorflow+k-means聚类简单实现猫狗图像分类的方法
2021/04/28 Python