python自带库处理excel-python 学习(三)数据库、EXCEL处理
importxlrd,xlwtimportpymysqlclassMysql:def __init__(self):
self.content=pymysql.Connect(
host='127.0.0.1', #mysql的主机ip
port=3306, #端口
user='root', #用户名
passwd='123456', #数据库密码
db='test', #数据库名
charset='utf8', #字符集
)
self.cursor=self.content.cursor()defquery(self):
sql= "select grade,teacher,location from grade;"self.cursor.execute(sql)for row inself.cursor.fetchall():print("grade:%s teacher:%s location:%s" %row)
rows.append(row)print(f"一共查找到:{self.cursor.rowcount}")defreadtable(self):
sql= """select * from stu;"""self.cursor.execute(sql)
rows=[]for row inself.cursor.fetchall():print(row)
rows.append(row)print(f"一共查找到:{self.cursor.rowcount}")returnrowsdefinsert(self,grade,teacher,location):
sql= """INSERT INTO grade(grade,teacher,location) VALUES(%s,%s,%s)"""values=(int(grade),str(teacher),str(location))try:
self.cursor.execute(sql,values)
self.content.commit()#print("插入成功")
except:
self.content.rollback#print("插入失败")
defend(self):
self.cursor.close()
self.content.close()classExceltable:def __init__(self):
self.book= xlrd.open_workbook("grade.xls") #文件名,把文件与py文件放在同一目录下
self.sheet = self.book.sheet_by_name("Sheet1") #execl里面的worksheet1
defreadrow(self,row):#ctype: 0 empty,1 string, 2 number, 3 date, 4 boolean, 5 error
row_values =[]for i inrange(self.sheet.ncols):
cell=self.sheet.cell_value(row,i)
ctype=self.sheet.cell(row,i).ctypeif ctype == 2 and cell%1==0:
cell=int(cell)elif ctype == 3:#转成datetime对象
date = datetime(*xldate_as_tuple(cell, 0))
cell= date.strftime('%Y/%d/%m %H:%M:%S')elif ctype == 4:
cell= True if cell == 1 elseFalse
row_values.append(cell)returnrow_valuesdefreadall(self):#ctype: 0 empty,1 string, 2 number, 3 date, 4 boolean, 5 error
all_content =[]for i in range(1,self.sheet.nrows):
row_values=[]for j inrange(self.sheet.ncols):
cell=self.sheet.cell_value(i,j)
ctype=self.sheet.cell(i,j).ctypeif ctype == 2 and cell%1==0:
cell=int(cell)elif ctype == 3:#转成datetime对象
date = datetime(*xldate_as_tuple(cell, 0))
cell= date.strftime('%Y/%d/%m %H:%M:%S')elif ctype == 4:
cell= True if cell == 1 elseFalse
row_values.append(cell)
all_content.append(row_values)returnall_contentdefreadmutirow(self,start,end):
muti_content=[]for i in range(start,end+1):
row_values=[]for j inrange(self.sheet.ncols):
cell=self.sheet.cell_value(i,j)
ctype=self.sheet.cell(i,j).ctypeif ctype == 2 and cell%1==0:
cell=int(cell)elif ctype == 3:#转成datetime对象
date = datetime(*xldate_as_tuple(cell, 0))
cell= date.strftime('%Y/%d/%m %H:%M:%S')elif ctype == 4:
cell= True if cell == 1 elseFalse
row_values.append(cell)
muti_content.append(row_values)returnmuti_contentdefwritrow(self,rows):#创建Excel工作薄
myWorkbook =xlwt.Workbook()#3. 添加Excel工作表
mySheet = myWorkbook.add_sheet('test')#4. 写入数据
#myStyle = xlwt.easyxf('font: name Times New Roman, color-index red, bold on', num_format_str='#,##0.00') #数据格式
for i inrange(len(rows)):for j inrange(len(rows[i])):
mySheet.write(i, j, rows[i][j])#写入A3,数值等于1
#5. 保存
myWorkbook.save('Wtest.xls')if __name__ == '__main__':
mysql=Mysql()
myexcel=Exceltable()#读单行
#cells=myexcel.readrow(3)
#print(cells)
#读整个表
#all_content = myexcel.readall()
#for cells in all_content:
#print(cells)
#mysql.insert(cells[0],cells[1],cells[2])
#读指定表
#muti_content=myexcel.readmutirow(1,3)
#for cells in muti_content:
#print(cells)
#mysql.insert(cells[0],cells[1],cells[2])
#查询数据库
#mysql.query()
#将数据库内容写入EXCEL
rows=mysql.readtable()
myexcel.writrow(rows)
mysql.end()
python自带库处理excel-python 学习(三)数据库、EXCEL处理相关推荐
- 十大被低估的Python自带库!
大家在学习python的过程中,都会了解到python的一个强大的功能在于各种强大的第三方库函数,大家只需要通过pip install 即可安装我们需要的库函数. 大家往往只是关注自己安装的pytho ...
- 十大被低估的python库_小白必读!十大被低估的Python自带库!
原标题:小白必读!十大被低估的Python自带库! 大家在学习python的过程中,都会了解到python的一个强大的功能在于各种强大的第三方库函数,大家只需要通过pip install 即可安装我们 ...
- 可爱的python测试开发库及项目(python测试开发工具库汇总)
转载: https://www.jianshu.com/p/ea6f7fb69501 可爱的python测试开发库及项目(python测试开发工具库汇总) github地址 相关书籍下载 Python ...
- python自带idle_如何使用python自带IDLE
下面从 python自带的IDLE,python的命令行,Windows命令行,三个方面介绍 如何使用python 一.python自带的IDLE和shell 1. 在开始菜单打开python的she ...
- python中csv库_关于python 自带csv库的使用心得 附带操作实例以及excel下乱码的解决...
因为上次帮我们产品处理过一个文件,他想生成能excel处理操作的.但是上次由于时间非常紧张,所以并没有处理好. 正好无聊就来好好研究一下 ,找算法要了几个 csv文件.来好好玩一玩. 全篇使用了pyt ...
- 怎么装python的keras库_Keras 教程: Python 深度学习终极入门指南
在这篇 Keras 教程中, 你将学到如何用 Python 建立一个卷积神经网络! 事实上, 我们将利用著名的 MNIST 数据集, 训练一个准确度超过 99% 的手写数字分类器. 开始之前, 请注意 ...
- python网络编程库_python网络编程学习笔记(9):数据库客户端
一.DB-API概述 python支持很多不同的数据库.由于不同的卖家服务器导致和数据库通信的网络协议各有不同.在python的早期版本中,每一种数据库都带有自己的python模块,所有这些模块以不同 ...
- python中requests库的用途-python中requests库session对象的妙用详解
在进行接口测试的时候,我们会调用多个接口发出多个请求,在这些请求中有时候需要保持一些共用的数据,例如cookies信息. 妙用1 requests库的session对象能够帮我们跨请求保持某些参数,也 ...
- python常用标准库有哪些-Python开发中常用的标准库
大多数基于 Python 开发的应用程序都会用到本地标准库和三方库,这样不仅能让我们把时间去关注真正的业务开发,也能学习到更多价值含量高的程序设计和开发思想.程序开发中有一句著名的话叫做: Don't ...
- python人脸识别库_基于Python的face_recognition库实现人脸识别
Python Python开发 Python语言 基于Python的face_recognition库实现人脸识别 一.face_recognition库简介 face_recognition是Pyt ...
最新文章
- linux命令行ps1变量_利用Shell中变量PS1定制Linux Shell命令主提示符
- ASCII,unicode, utf8 ,big5 ,gb2312,gbk,gb18030等几种常用编码区别
- python下载地址
- Mybatis Interceptor 拦截器原理 源码分析
- 计算机在我国开始被应用于,计算机应用推动自动化与信息化的发展
- C++socket编程(四):4.2 创建XTcp动态链接库项目
- hadoop安装单机配置
- python verilog顶层连线_FPGA中顶层模块与各子模块之间的连接线类型
- 图形大小_光伏电池正面图形设计优化
- Python_随笔笔记_Python基础1
- 中了勒索病毒怎么办|文件解密|文件恢复
- (NO.00004)iOS实现打砖块游戏(一):素材的制作
- Mac环境下Android一键自动打包发布到蒲公英平台
- [技术讨论]为什么运算放大器有共模输入电压范围限制呢,详解在这里
- python对市场营销-python数据分析:商品数据化运营(上)——知识点
- 市面上几种常见的网络推广方式
- ES倒排索引与分词详解
- 易语言编写的WIfi热点共享工具 源码+成品
- 图解:光缆终端盒、尾纤的作用和接法
- 伪ios新浪微博客户端(自家用)
热门文章
- spring之Environment
- 博客园有人随笔总数10000+?
- python经典程序练习题-99道经典练习题助你全面掌握python基础知识,附技巧答案...
- python小项目实例流程-Python小项目:快速开发出一个简单的学生管理系统
- python常见错误-python初学者常见的错误
- python 难度-Python分析 oj 网的题目难度和通过率的关系
- python读取大文件-Python如何读取、拆分大文件
- python基础实例-Python入门基础知识实例,
- 机器人编程语言python-入门篇丨使用EV3机器人,趣味学习Python编程语言~
- python运行程序-一文看懂python程序的执行过程