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的Django应用程序解决AJAX跨域访问问题的方法
May 31 Python
尝试用最短的Python代码来实现服务器和代理服务器
Jun 23 Python
Python读取图片属性信息的实现方法
Sep 11 Python
Python 爬虫学习笔记之正则表达式
Sep 21 Python
python3实现公众号每日定时发送日报和图片
Feb 24 Python
pandas的连接函数concat()函数的具体使用方法
Jul 09 Python
python系列 文件操作的代码
Oct 06 Python
Python opencv相机标定实现原理及步骤详解
Apr 09 Python
pycharm sciview的图片另存为操作
Jun 01 Python
Python爬虫获取豆瓣电影并写入excel
Jul 31 Python
利用python清除移动硬盘中的临时文件
Oct 28 Python
Python 无限级分类树状结构生成算法的实现
Jan 21 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
PHP 常用函数库和一些实用小技巧
2009/01/01 PHP
PHP字符编码问题之GB2312 VS UTF-8解决方法
2011/06/23 PHP
php实现mysql数据库连接操作及用户管理
2015/11/08 PHP
php简单压缩css样式示例
2016/09/22 PHP
thinkPHP5框架导出Excel文件简单操作示例
2018/08/03 PHP
Laravel 模型使用软删除-左连接查询-表起别名示例
2019/10/24 PHP
javascript Zifa FormValid 0.1表单验证 代码打包下载
2007/06/08 Javascript
分页栏的web标准实现
2011/11/01 Javascript
解决Jquery鼠标经过不停滑动的问题
2014/03/03 Javascript
JS实现点击上移下移LI行数据的方法
2015/08/05 Javascript
基于Bootstrap和jQuery构建前端分页工具实例代码
2016/11/23 Javascript
vue一步步实现alert功能
2017/07/05 Javascript
详解node+express+ejs+bootstrap构建项目
2017/09/27 Javascript
使用electron将vue-cli项目打包成exe的方法
2018/09/29 Javascript
[01:00:04]DOTA2上海特级锦标赛B组小组赛#1 Alliance VS Spirit第二局
2016/02/26 DOTA
小议Python中自定义函数的可变参数的使用及注意点
2016/06/21 Python
python将txt等文件中的数据读为numpy数组的方法
2018/12/22 Python
Python离线安装PIL 模块的方法
2019/01/08 Python
Python爬虫抓取技术的一些经验
2019/07/12 Python
Python 转换文本编码实现解析
2019/08/27 Python
python编程进阶之类和对象用法实例分析
2020/02/21 Python
python代码xml转txt实例
2020/03/10 Python
阿迪达斯香港官网:adidas香港
2019/11/09 全球购物
.NET里面什么时候需要调用垃圾回收
2015/06/01 面试题
诺思信科技(南京)有限公司.NET笔试题答案
2013/07/06 面试题
总务岗位职责
2013/11/19 职场文书
公司合作意向书
2014/04/01 职场文书
快餐公司创业计划书
2014/04/29 职场文书
文明社区申报材料
2014/08/21 职场文书
欢迎词范文
2015/01/27 职场文书
违纪检讨书范文
2015/01/27 职场文书
西安事变观后感
2015/06/12 职场文书
新学期开学寄语2016
2015/12/04 职场文书
浅谈mysql返回Boolean类型的几种情况
2021/06/04 MySQL
Redis Cluster集群动态扩容的实现
2021/07/15 Redis
如何通过简单的代码描述Angular父组件、子组件传值
2022/04/07 Javascript