通过实例学习Python Excel操作
Python  /  管理员 发布于 7年前   206
这篇文章主要介绍了通过实例学习Python Excel操作,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
1.python 读取Excel
# -*- coding: utf-8 -*-import xlrdimport os,sysreload(sys)sys.setdefaultencoding("utf8")filename = 'text.xlsx'filename = filename.decode('utf-8')book = xlrd.open_workbook(filename)sheet1 = book.sheets()[0]nrows = sheet1.nrowsprint u'表格总行数 ',nrowsncols = sheet1.ncolsprint 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内容如下:
运行结果:
表格总行数 4表格总列数 3User:edw Filename:sh002_zyb_tx_chk_h0200.py Tablename:SH002_ZYB_TX_CHK_H0200User:etl Filename:sh002_a_h0200.py Tablename:SH002_A_H0200User:app Filename:sh002_b_h0200.py Tablename:SH002_B_H0200
2.python 写入Excel
# -*- coding: utf-8 -*-import xlwtimport pymysqldef 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 datadef 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) #保存excelsql = 'select * from PARTITIONS limit 100'res = sql_connect(sql)write_excel('partitions.xls', res)
运行结果:
3.python Excel写入表内
# -*- coding: utf-8 -*-import xlwtimport xlrdimport pymysql#从excel读取数据写入mysqldef 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的内容:
查询表中内容:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
122 在
学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..123 在
Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..原梓番博客 在
在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..博主 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..1111 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
Copyright·© 2019 侯体宗版权所有·
粤ICP备20027696号