Python使用pymysql小技巧


Posted in Python onJune 04, 2017

在使用pymysql的时候,通过fetchall()或fetchone()可以获得查询结果,但这个返回数据是不包含字段信息的(不如php方便)。查阅pymysql源代码后,其实获取查询结果源代码也是非常简单的,直接调用cursor.description即可。

譬如:

db = pymysql.connect(...)
cur = db.cursor()
cur.execute(sql)
print(cur.description)
result = cur.fetchall()
data_dict=[]
for field in cur.description:
  data_dict.append(field[0])
print(data_dict)

在pymysql的 pymysql/cursors.py 中,找到 class Cursor 可以看到如下代码:

def __init__(self, connection):
  self.connection = connection
  self.description = None
  self.rownumber = 0
  self.rowcount = -1
  self.arraysize = 1
  self._executed = None
  self._result = None
  self._rows = None
  self._warnings_handled = False

因此,调用 cur.rowcount 是可以迅速返回查询结果记录数的,不需要通过 len() 获得。

Python 相关文章推荐
python网络编程学习笔记(九):数据库客户端 DB-API
Jun 09 Python
Python实时获取cmd的输出
Dec 13 Python
Django学习笔记之Class-Based-View
Feb 15 Python
Python利用matplotlib生成图片背景及图例透明的效果
Apr 27 Python
Python+matplotlib+numpy绘制精美的条形统计图
Jan 02 Python
说说如何遍历Python列表的方法示例
Feb 11 Python
TensorFlow绘制loss/accuracy曲线的实例
Jan 21 Python
python+selenium+chromedriver实现爬虫示例代码
Apr 10 Python
如何基于python实现不邻接植花
May 01 Python
python Gabor滤波器讲解
Oct 26 Python
python温度转换华氏温度实现代码
Dec 06 Python
如何Python使用re模块实现okenizer
Apr 30 Python
Python常见异常分类与处理方法
Jun 04 #Python
Python实现Linux的find命令实例分享
Jun 04 #Python
安装Python和pygame及相应的环境变量配置(图文教程)
Jun 04 #Python
Python安装官方whl包和tar.gz包的方法(推荐)
Jun 04 #Python
python snownlp情感分析简易demo(分享)
Jun 04 #Python
Python 调用Java实例详解
Jun 02 #Python
python使用两种发邮件的方式smtp和outlook示例
Jun 02 #Python
You might like
《魔兽争霸3:重制版》更新 多项视觉效果调整
2020/05/04 魔兽争霸
Home Coffee Roasting
2021/03/03 咖啡文化
正则表达式语法
2006/10/09 Javascript
php中常量DIRECTORY_SEPARATOR用法深入分析
2014/11/14 PHP
PHP、Python和Javascript的装饰器模式对比
2015/02/03 PHP
php实现window平台的checkdnsrr函数
2015/05/27 PHP
PHP下载文件的函数实例代码
2016/05/18 PHP
PHP面向对象之里氏替换原则简单示例
2018/04/08 PHP
jquery获取元素索引值index()示例
2014/02/13 Javascript
jquery实现仿JqueryUi可拖动的DIV实例
2015/07/31 Javascript
animate 实现滑动切换效果【实例代码】
2016/05/05 Javascript
Boostrap入门准备之border box
2016/05/09 Javascript
js实现文字列表无缝滚动效果
2017/06/23 Javascript
小程序清理本地缓存的方法
2018/08/17 Javascript
Vue中computed、methods与watch的区别总结
2019/04/10 Javascript
微信小程序云开发之新手环境配置
2019/05/16 Javascript
微信小程序class封装http代码实例
2019/08/24 Javascript
vue+Element中table表格实现可编辑(select下拉框)
2020/05/21 Javascript
jquery实现图片放大镜效果
2020/12/23 jQuery
python使用线程封装的一个简单定时器类实例
2015/05/16 Python
Python IDE PyCharm的基本快捷键和配置简介
2015/11/04 Python
Python实现 多进程导入CSV数据到 MySQL
2017/02/26 Python
Django实现支付宝付款和微信支付的示例代码
2018/07/25 Python
Python判断一个三位数是否为水仙花数的示例
2018/11/13 Python
Python read函数按字节(字符)读取文件的实现
2019/07/03 Python
softmax及python实现过程解析
2019/09/30 Python
python扫描线填充算法详解
2020/02/19 Python
python 制作网站小说下载器
2021/02/20 Python
CSS3中使用RGBA设置透明度的示例
2015/08/04 HTML / CSS
俄罗斯名牌服装网上商店:UNIQUE FABRIC
2019/07/25 全球购物
法国一家多品牌成衣精品中/高档商店:Graduate Store
2019/08/28 全球购物
Tea Collection官网:一家位于旧金山的童装公司
2020/08/07 全球购物
建筑学专业自荐书
2014/07/09 职场文书
园林技术专业求职信
2014/07/28 职场文书
详解Nginx启动失败的几种错误处理
2021/04/01 Servers
vue+spring boot实现校验码功能
2021/05/27 Vue.js